1.4.2_06 Hotspot Considered Harmful
The following 23-line program, containing no library calls and nothing even remotely "tricky", consitently crashes the JVM on every Linux or Windows box we ve tried it on. We tried filing a bug report, but since someone once fixed a problem (5009717) generating the same error code some time back in an early 1.5 beta, this is a "duplicate" (despite the fact that it's on a 1.4 build apparently released after the previous bug was closed). A later attachment to the above bug report suggests that at least one other user has hit this, though.
It is possible to make the problem "disappear" by rearranging the code, but our testing suggests that how long it takes to crop up is a function of Hotspot's optimization heuristics, so it's not easy be sure if you've avoided the problem or just pushed it one iteration past the number of times you've tested some particular path. In other words, you can't trust it.
We're telling our customers to avoid 1.4.2_06 entirely because of this issue. We are big Java advocates in our company and industry and find it most painful and embarassing to have to tell people using our software that the (at this writing) current version of the Java 1.4 environment is
unfit for use and we don't know when (or if) it will ever be fixed.
// run this on 1.4.2_06
public class GoodbyeWorld {
public static double func1(){
double r = 0;
for (int i = 0; i < 1; i++)
r += func2();
return r;
public static double func2(){
double[] a = {0};
double r = 0;
for (int i = 0; i < 1; i++)
r = a;
return r;
public static void main(String[] argv) {
for (int i = 0; i < 1000; i++)
func1(); // System.out.println("i["+i+"]=" + func1());
$ java -version
java version "1.4.2_06"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_06-b03)
Java HotSpot(TM) Client VM (build 1.4.2_06-b03, mixed mode)
$ java GoodbyeWorld
# HotSpot Virtual Machine Error, Internal Error
# Please report this error at
# http://java.sun.com/cgi-bin/bugreport.cgi
# Java VM: Java HotSpot(TM) Client VM (1.4.2_06-b03 mixed mode)
# Error ID: 43113F2652414D452D41503F491418160E435050005C
# Problematic Thread: prio=1 tid=0x080a8eb0 nid=0x7954 runnable
Heap at VM Abort:
Heap
def new generation total 576K, used 156K [0x44770000, 0x44810000, 0x44c50000)
eden space 512K, 30% used [0x44770000, 0x447971c0, 0x447f0000)
from space 64K, 0% used [0x447f0000, 0x447f0000, 0x44800000)
to space 64K, 0% used [0x44800000, 0x44800000, 0x44810000)
tenured generation total 1408K, used 0K [0x44c50000, 0x44db0000, 0x48770000)
the space 1408K, 0% used [0x44c50000, 0x44c50000, 0x44c50200, 0x44db0000)
compacting perm gen total 4096K, used 975K [0x48770000, 0x48b70000, 0x4c770000)
the space 4096K, 23% used [0x48770000, 0x48863f80, 0x48864000, 0x48b70000)
Thank you for the test case. I was able to reproduce this on solaris-i586, windows-i586, and on linux-i586. The crash is specific to the -client compiler and the i586 architecture. The expanded text of the Error-ID string is:
43113F2652414D452D41503F491418160E435050005C
Decodes to:
c1_FrameMap_i486.cpp, 92The test case works fine using -server (or -Xint) on i586, and it works fine using both -client and -server on SPARC systems.
I opened Bug-ID 6215242 on this issue. Look for is on the Bug-Parade in a day or two.
Similar Messages
-
JimP: Drawing Architecture: Retained Mode Considered Harmful
Gentlepersons,
I think that I'm beginning to understand how Flash/Flex's drawing architecture works. My current understanding is described in this blog post:
Retained Mode Considered Harmful
If you understand Flash/Flex's drawing architecture, I'd welcome your comments on -- and corrections to! -- this blog post.
On the other hand, if you're an experienced programmer but you're having trouble understanding how drawing works in Flash/Flex, then perhaps you'll learn something by reading this post (and, especially, from the comments on and corrections to it).
Thanks! :-)
JimP -
Is Iphone Hotspot consider as wifi or bluetooth?
I am using a Iphone4 hotspot to my ipad2 . Is that consider wifi or bluetooth? Can it do Facetime?
iOS: Understanding Personal Hotspot
http://support.apple.com/kb/HT4517
Use Bluetooth to tether your iPhone, iPod touch, or iPad
http://www.macworld.com/article/1159258/bluetooth_tethering.html
How to Connect an iPad to an iPhone Via Bluetooth Tethering
http://techtips.salon.com/connect-ipad-iphone-via-bluetooth-tethering-25472.html
Using FaceTime http://support.apple.com/kb/ht4319
Troubleshooting FaceTime http://support.apple.com/kb/TS3367
The Complete Guide to FaceTime + iMessage: Setup, Use, and Troubleshooting
http://tinyurl.com/a7odey8
Troubleshooting FaceTime and iMessage activation
http://support.apple.com/kb/TS4268
Using FaceTime and iMessage behind a firewall
http://support.apple.com/kb/HT4245
iOS: About Messages
http://support.apple.com/kb/HT3529
Set up iMessage
http://www.apple.com/ca/ios/messages/
Troubleshooting Messages
http://support.apple.com/kb/TS2755
Setting Up Multiple iOS Devices for iMessage and Facetime
http://macmost.com/setting-up-multiple-ios-devices-for-messages-and-facetime.htm l
FaceTime and iMessage not accepting Apple ID password
http://www.ilounge.com/index.php/articles/comments/facetime-and-imessage-not-acc epting-apple-id-password/
Unable to use FaceTime and iMessage with my apple ID
https://discussions.apple.com/thread/4649373?tstart=90
For non-Apple devices, check out the TextFree app https://itunes.apple.com/us/app/text-free-textfree-sms-real/id399355755?mt=8
Cheers, Tom -
"Do not use assertions to check the parameters of a public method".
Statement source: http://java.sun.com/j2se/1.4/docs/guide/lang/assert.html
I could not disagree more with that statement. I would support it if they qualified that by saying that if an API provides an internal service where the context is known and the acceptibility of arguments known, feel free to assert. The same rationale applied to protected or package visibility can be used in that case. Where you should not use pre-condition argument asserts is when the context cannot be known: you are distributing an API for general use."I think that the reason to avoid using assertions for
parameter checking in public methods is because
assertion can be disabled".
That would also be an argument for not using asserts
on methods with package or protected visibility, too.
However, nobody has suggested we not use asserts in
those cases. Asserts are extremely beneficial when
checking package and protected method arguments. They
are equally beneficial with public method arguments. Okay. I'll suggest that you not use asserts to check parameters of protected methods. This is because those methods can be called by classes that extend the class, and thus can be written by other programmers.
In general, it's okay to use asserts to check package methods, because only one programmer or the programmers on one team will be calling the method. Presumably, the programmers working on that package will have assertions enabled for the package while working on the code, and therefore will find where they call the method with bad parameters.
Consider having a method with package scope and adding
asserts to quickly ferret out problems with its usage
within an application. Now add "public" to the front
of it. The visibility changed, you therefore remove
the asserts and add IllegalArgumentException? Why? In
fact you would not and should not remove the asserts
in the vast majority of cases. You should in fact use
asserts even when starting out as a public method, in
the vast majority of cases. The small minority of
cases, where you are publishing an API for general
distribution, should not use asserts but rather an
IAE. Obviously HUGE numbers of developers use
generally distributed APIs but most programmers are
writing applications and services and internal APIs. I agree that if code will always be used internally, it's okay to use asserts rather than exceptions to check parameters. However, code meant for internal use for a short time has an uncanny way of living on for years and being distributed more widely than planned... ;-) -
YouTube link handling considered harmful
Before I purchased my iPhone, I had a YouTube account with 100+ favorites.
Now that I have the iPhone, I'd like to view my favorites list from YouTube.
There's no way I can find to do this. If I visit my 'favorites' page for my YouTube account I can see all the videos from my favorites list, but the only way to view them is to individually email myself each and every link.
This is broken behavior that defies common sense. Am I doing something wrong? What's the trick to being able to view my YouTube favorites?Your funny, I actually like you. I'm writing the below with a smile.
+harmful. IN BRIEF: adj. - Constituting a disadvantage; Causing or capable of causing injury; Injurious to physical or mental health adj. - Tending to cause great injury; Contrary to your interests or welfare.+
If he/she considers the YouTube feature to cause some disadvantge or that it is injurious to their mental health, then so be it. _Or perhaps they somehow rely on YouTube far more than I ever would or could._ I'm not going to tell them they are wrong, because I would be wrong. It's all in their perception. They're fully capable deciding if the feature is harmful to them in some way.
The dictionary is on his side.
Now would I use the word harmful? Surely not. It's not like Google Maps (or YouTube) is leading him off a pier when he's trying to get coffee.
JJ -
Hyphenated package names considered harmful?
The other day I glanced at the Package Making HOWTO on the Wiki, and I happened to notice a passage stating that package names should not be hyphenated. However, I notice that a number of existing packages do have hyphenated names.
So what's the deal? Should we really avoid hyphens, and if so, why?
(BTW, I'm with the LISPers on this issue: hyphens are fairly natural to type and are thus cool; underscores are an abomination, so I'd really like to use hyphens).My mistake... long time ago.
Its the $pkgver and $pkgrel that should not contain hyphens. Names are ok.
hyphenate away. I'll update the wiki.
Dusty -
Default automatic approvals (in light of KB3001652) considered harmful
In case you didn't know, your WSUS server adds a "default automatic approval" rule that causes it to automatically approve critical and security updates. If you still have that enabled, you should remove it ASAP. It burned
me.
To remove the rule, go to Options in your WSUS console then "automatic Approvals", select the rule and Remove it.
This month, Microsoft released the Critical update KB3001652 (to Visual Studio tools for Microsoft Office 2010, a run-time library for third-party applications) which caused many systems to hang.
Microsoft quickly revoked the update, but if your (i.e. my) WSUS server has the default automatic approval rule, the bad update (since it is "Critical") is automatically approved then downloaded to any workstation with an application
that uses the library.
When users go to shut their computers down when they leave work, the bad update starts and never stops, continuing all night. And leaving them frozen out when they come in in the morning. The only recourse is to power off.Well, the problem here is that Microsoft made a mistake. New revisions shall not contain new binaries.
See this article:
Managing changes from a WSUS Server
"Auto-reapprove revisions. By default, when a new revision of an approved update is synchronized to the WSUS server we move the approval
to the new revision. Normally this is what customers want, since new revisions never contain new binaries, just fixes to the metadata that describe how to automate the installation of the update."
An even more serious problem IMO is that MS revoked the update but they did not immediately distribute new metadata to expire the update. In fact they have not updated the metadata yet.
Rolf Lidvall, Swedish Radio (Ltd) -
I reccently installed Solaris 9 (12/02) on a SunFire 280, and have been using the new Solaris Management Console for modifying partitions and other setup activities. What a great tool!
After installing the Jan/16/04 Solaris 9 Recommended Patch Cluster, however, I started getting CIM errors (accompanied by cast exceptions) when trying to view my disks. Also, null pointer exceptions were being reported when trying to look at patches.
Backing out the wbem patch 112945-19 (which replaces a number of jar files) fixed the problem, and I can see my disks again.
I'm new to Solaris, and don't know how to report bugs (or whether it is even possible). But I thought I would mention my experience here, FWIW.I reccently installed Solaris 9 (12/02) on a SunFire 280, and have been using the new Solaris Management Console for modifying partitions and other setup activities. What a great tool!
After installing the Jan/16/04 Solaris 9 Recommended Patch Cluster, however, I started getting CIM errors (accompanied by cast exceptions) when trying to view my disks. Also, null pointer exceptions were being reported when trying to look at patches.
Backing out the wbem patch 112945-19 (which replaces a number of jar files) fixed the problem, and I can see my disks again.
I'm new to Solaris, and don't know how to report bugs (or whether it is even possible). But I thought I would mention my experience here, FWIW. -
Database Components Considered Evil
This is the most important adage since "GOTO considered harmful". Small applications can benefit from the convenience of binding data sources to forms and using SQL based queries in components. Making that available is an industry must; it is also just this side of evil.
Creating many small applications or a greater-than-small application should never fall victim to such a temptation; rather, in my opinion you should always abstract the database in data models that hide the underlying persistence strategy entirely. That way you manage data access in your data access package and publish APIs to the rest of the team for getting simple or complex models.
Just started using JSF (very, very promising technology that stands on the shoulders of midgets) and was diasppointed by the availability of UI database binding. It's a marketing reality that is also present in JSTL.The advantage of DB Components, is you can just plonk 'em when you want them and they know how to display themselves automatically and follows the Encapsulation OO strategy. This been said, its a very bad idea to have sql statements within a DB component.... what happens if the database changes?
BUT, the best of both world solution is to have a Model - View component (Notice, no Controller!) - Where, instead of the view component containing the SQL, it contains a reference to a default model , and it is this model that contains the SQL to retrieve the data. The outcome is the same, just plonk the component on the screen, and it sorts itself out , however, the database remains abstract to the 'view' , the SQL is encapsulated within the model.... The database changes, it only requires changes to this default model for everything to continue to work.
So, using this methology, we can end up with a panel (the parent View) , containing lots of child views (Model-Views). These child views could also contain their own imbedded model-views. This is the composite pattern, and is mentioned by GOF. -
Is iPod radiation harmful?
I listen to my iPod touch every day on walks for about half an hour or so while I keep in my back pocket connected to a bluetooth headset. Wifi is left on as well to receive emails. After nearly a year of this I've started to develop a permanent dull ache in the behind on the same right side as the pocket I keep the iPod. Could be caused by something else of course but has anyone experienced any problems? I don't know what the radiation power of an iPod is close up but I gather that anything around 1000 microwatts/m2 is considered harmful and high risk.
I can't find SAR information on iPod touch, but apple did publish SAR information on iPhone 5:
http://www.apple.com/legal/rfexposure/iphone5,1/en/
And more information:
Specific absorption rate - Wikipedia, the free encyclopedia
Bottom line. The emission from an iPod in your back pocket would not cause your symptoms. Best of luck. -
From last few days we are seeing blocking on SQL SERVER where select is taking exclusive lock and blocking the Update statement. Even Read committed snapshot Isolation is enabled.
SQL SERVER 2012 SP2
Windows server 2012.
Lock pages in Memory has been enabled
Please let me know any one can help us :)1) There's not really any such thing as a "blocking SQL Statement". A query is blocked by a session because that other session holds incompatible locks. Those incompatible locks may have been acquired by a previous query in the blocking
session's transaction. So the SELECT you see in the report may not be responsible for the blocking the UPDATE.
2) In RCSI only READ COMMITTED and SNAPSHOT isolation levels use the row versioning, lock-free reading. If you start a transaction an select a different isolation level you will acquire S locks to read data. For instance .NET apps using
TransactionScope, or COM+ apps using transactions can unintentionally start a SERIALIZABLE transaction. Effectively opting-out of RCSI. see eg
using new TransactionScope() Considered Harmful
David
David http://blogs.msdn.com/b/dbrowne/ -
Permanent link to specific version of a document
When ‘Sharing’ documents is it possible to issue (say for emailing to someone) a permanent link to the document i.e. one which is locked to the version and not one that changes or fails if a new version is subsequently added?
There appears to be two groups of document links in SharePoint, the current version and previous versions.
The current document version is referenced by a canonical path:
http://site/document library/document.doc
A prior document version is referenced from a revision path. But this only works for non-current versions:
http://site/_vti_history/versionID/document.doc (Where versionID is generated by SharePoint)
Therefore every time a new document revision is created the contents of the canonical path will change. The canonical path will point to the new document version while the previous version of the document is only available with the revision path.
Therefore it is not possible to create a permanent link to a version of the document if at the time of issuing it is the current version.Hi,
According to your description, my understanding is that you want to create a permanent link to specific version of a document.
If a new version is created, the contents of the canonical path will change. Although the version number will increase, the previous version number will not change.
If you want version 1.0, then the URL for this version will always be
http://site/_vti_history/512/document.doc.
More information are provided in the link below:
http://theressomethingaboutsharepoint.blogspot.nl/2011/09/direct-link-to-certain-version-of.html
http://blogs.msdn.com/b/roberthorvick/archive/2007/01/04/wss-rant-linking-to-the-latest-version-of-a-sharepoint-document-considered-harmful-lessons-6-and-7.aspx
Best regards.
Thanks
Victoria Xia
TechNet Community Support -
SQL Dev 2.1:Ability to save and load visual query models?
At SQL Dev 2.1, do we now have the ability to save and load visual query models as with TOAD? Or has that functionality been rolled into the for-pay Data Modeler extension? Seemed strange to hide the functionality deep within SQL Worksheet, then not allow query models to be saved or loaded. From what I recall, load/save was scheduled to be in 2.0.
I've not yet downloaded and installed 2.1, but also as I recall, it was promised to be a significant (e.g. new-feature rich) release. Has it lived up to that promise? Hoping also that it's not so buggy as to not merit an upgrade. At my workplace, folks have different versions of SQL Dev 1.X installed, each for the purpose of retaining functionality that got broken in future releases, etc. Would love to be able to advise them to retire their 1.X installs in favor of 2.1.
Edited by: Dana N on Jan 21, 2010 6:45 AMDana, We are working on the query builder. We have not done anything with it in recent releases as we knew that it needed completely overhauled and a
couple of bug fixes were not going to give us the query builder we needed. Sue will be able to tell you more as the we get closer to releasing it as a feature.Thanks Barry. I know it's probably impossible to give firm dates, but my colleagues would love to know, ballpark, when query builder might be ready. Any particular year/quarter that's targeted for?
A lot of the bugs in the 2.1 are probably my fault as we decided to build a framework which allowed tasks to be scheduled like eclipse and push them to the
background. Coupled with this, we tore apart the worksheet to allow us to fit tasks in, but to also give us the ability to do some of the enhancement requests
that you guys, our users, have been asking for. While its not perfect, I believe its getting much better from both a functionality and performance standpoint. The
worksheet will not change again and there are no enhancements logged or scheduled which will do that. The issues that have come as part of 2.1 are being
addressed and we are fixing the highest priority ones as we speak. One of my priorities is to make these components as rock solid as possible.Thanks again. It really is a nice tool to work with, and I'm grateful to have it. I would choose stability for existing features over new ones, but I suppose there always has to be a balance in development. What was really scary in the past was getting bizarre / wrong answers in query results--that's a complete show stopper; e.g. clicking on a row/col intersection in a result set row would show strange and false values. New features can wait, but core functionality must be solid. If one can't presume integrity of query results, it's game over--using a version of SQL Developer that returns inconsistent result sets between runs could be Considered Harmful, or so it is to me.
Anyway, thanks for responding and I hope Oracle Corp gets you whatever assistance you need to improve the quality of existing functionality while adding new features; with one not being at the expense of the other. :-) Glad also to see Sue has authored a book on the tool. Hopefully that will drive customer demand and force increased allocation of development resources toward the product. I'd like to think having out-of-the-box tools that are a joy to use might even increase market share.
Data Modeler I would love to use, but am completely priced out of it. Enterprise Architect from Sparx Systems is the best value there so far as I can tell.
Dana -
Emailing persistent link to the current document version.
I did not find a suitable answer by searching previous posts.
We are working on a document transmittal workflow. This will email to a user, links to documents stored in a SharePoint document library. A requirement is to use out of the box features.
If the document is an old version I use the link format
http://site/_vti_history/UIVersion/Document Library/doc.doc. This works well as it always points to that version of the document.
However the above format does not work when referencing the current version of the document, even if I know the document UIversion to plug into the above URL. The link has to be
http://site/Version/Document Library/doc.doc
The problem is when a link to the current version of the document is emailed and then the document is changed in SharePoint.
The email will no longer point to the version intended but rather the ‘new’ latest version. I need the link to open the correct document version.
What I need is a persistent link to any version of a document whether the current version or an old one and to generate that at the time the email is created.
However I cannot see a way to do this. Any help would be appreciated.
Our current work around is to clone the document to artificially create an old version which can then be referenced. However this is not desirable.
Thanks RichardHi Richard,
I'm afriad that it is impossible to modify the current document url(canonical path) to the last history version document url(revision path) in the workflow mail has been sent after the new current document(canonical path) generates.
The canonical path document will always points to the lastest current version document, the persistent link of revision path document will only be available after the newer current canonical path document generates, and the revision path in workflow
mail will not be available for the curent document item, this is how SharePoint version history works, you can read the following article.
As a workaround, you may clone the document as you have done, or you may send the all the current version document information and the current document attachment in workflow mail as a snapshot for that time of triggering the workflow.
http://blogs.msdn.com/b/roberthorvick/archive/2007/01/04/wss-rant-linking-to-the-latest-version-of-a-sharepoint-document-considered-harmful-lessons-6-and-7.aspx
Thanks,
Daniel Yang
Forum Support
Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact
[email protected]
Daniel Yang
TechNet Community Support -
Easily duplicate / paste layer in different group folder?
I design Web sites using Layer Comps so the homepage and innerpage examples are all in one .PSD. This means my Photoshop CC file has TONS of layers and folders that require me to scroll in the Layers Palette.
Is there a way to copy/paste or move a layer to a different group folder without dragging it? Copy/paste for layer styles is a great tool. Is there anything like this for layers themselves?
Sometimes I resort to opening a blank PSD to drag the layer to that, then go back to my source document and auto select the new group I want it in, flip back to the blank doc and drag the layer from there. That is not a great workaround if I want the positioning to be the same as the original layer.
Thanks!Hi Nik,
use of with() is generally not good, maybe:
http://yuiblog.com/blog/2006/04/11/with-statement-considered-harmful/
without with() it looks like that:
#target illustrator
var docRef = app.activeDocument;
var ln = 'Layer 1';
var ol = docRef.layers.getByName(ln);
var nl = docRef.layers.add();
nl.name = ln+' Copy';
for (var a = ol.pageItems.length-1; a >= 0; a--) {
ol.pageItems[a].duplicate(nl, ElementPlacement.PLACEATBEGINNING);
the second document is a new document?
var doc2 =app.documents.add();
or you can get it by name just like the layer
or by index
var doc2 = app,documets[ indexnumber ];
then var nl should be:
var nl = doc2.layers.add();
chris
Maybe you are looking for
-
RemoteApp 2012 problem on windows XP.
Hello I have a problem with RemoteApp web access on Windows Server 2012 when i connect with Windows XP clients. The internet explorer shows the credential promt always and i can not access to the server. I have not this problem when i connect with wi
-
I just updated to Mavericks and now my iPhoto won't open
I just updated my imac to mavericks, now my iphoto wont open. how do I fix this
-
How can i put my iphone in to dfu mode if my home button is broken i am on ios 7
i cannot figure out how to put my iphone in dfu mode with a broken home button on ios 7
-
How can I tell if my iDisk is in sync?
In Snow Leopard, I click on my iDisk and it would say when it was last sync'ed and if it was in sync or if the sync failed at the bottom of the window (where it would say how many items are in the folder). In Lion, this information seems to have gon
-
CNU937DVO4 mean when i try to log in three times an how can i fix it
After tryin to login 3 times it gives me CNU937DVO4 an says fatal error.....system halted my compture is a hp mini 110-1046NR