LOV Bug with rendering result?

Hey,
I'm attempting to create a basic LOV using either the "ADF LOV Input" or "ADF LOV Choice List" components.
When I try to use these components with a small set of data they behave as one would expect, however I run into some odd behavior when the list behind the LOV is large and the component is required to fetch additional rows of data as the user scrolls through the options.
With the LOV Input, as I scroll through the data it is retrieved fine, however when I select a value from the bottom half of the list, the component on the page does not update with the selected value and the console in JDeveloper throws the following [truncated] stack trace:
SEVERE: Server Exception during PPR, #1
java.lang.NullPointerException
     at oracle.adfinternal.view.faces.model.binding.RowDataManager.getRowIndex(RowDataManager.java:171)
     at oracle.adfinternal.view.faces.model.binding.FacesCtrlHierBinding$FacesModel.getRowIndex(FacesCtrlHierBinding.java:417)
     at org.apache.myfaces.trinidad.component.UIXIterator._fixupFirst(UIXIterator.java:310)
     at org.apache.myfaces.trinidad.component.UIXIterator.__encodeBegin(UIXIterator.java:297)
     at org.apache.myfaces.trinidad.component.UIXCollection.encodeBegin(UIXCollection.java:517)
     at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:271)
     at oracle.adfinternal.view.faces.renderkit.rich.SimpleInputListOfValuesRendererBase$ListOfValuesDialogRenderer.encodeContent(SimpleInputListOfValuesRendererBase.java:598)
     at oracle.adfinternal.view.faces.renderkit.rich.PanelWindowRenderer.encodeAll(PanelWindowRenderer.java:190)
     at oracle.adfinternal.view.faces.renderkit.rich.DialogRenderer.encodeAll(DialogRenderer.java:135)
     at oracle.adf.view.rich.render.RichRenderer.delegateRenderer(RichRenderer.java:846)
     at oracle.adfinternal.view.faces.renderkit.rich.SimpleInputListOfValuesRendererBase$ListOfValuesPopupRenderer.encodeAllChildren(SimpleInputListOfValuesRendererBase.java:634)
     at oracle.adfinternal.view.faces.renderkit.rich.PopupRenderer.encodeAll(PopupRenderer.java:225)
     at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:815)
     at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:208)
     at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:733)
It looks as though the View Object on the back-end is getting populated with the correct value selected from the list (I have a second, cascaded LOV built off the value selected which is populating with the correct data) however the front-end is not getting populated with the correct data.
With the second LOV component (ADF LOV Choice List) I am completely unable to scroll through the list of values; the component hangs as soon as it attempts to fetch any more data and throws the following [truncated] stack trace in the JDeveloper console:
SEVERE: Server Exception during PPR, #2
java.lang.NullPointerException
     at oracle.jbo.uicli.binding.JUCtrlListBinding$JUCtrlListBindingItemRef.get(JUCtrlListBinding.java:3006)
     at javax.el.MapELResolver.getValue(MapELResolver.java:164)
     at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:143)
     at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:64)
     at com.sun.el.parser.AstValue.getValue(AstValue.java:117)
     at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:192)
     at org.apache.myfaces.trinidad.bean.FacesBeanImpl.getProperty(FacesBeanImpl.java:70)
     at oracle.adfinternal.view.faces.renderkit.rich.ValueRenderer.getValue(ValueRenderer.java:170)
     at oracle.adfinternal.view.faces.renderkit.rich.ValueRenderer.getConvertedString(ValueRenderer.java:129)
     at oracle.adfinternal.view.faces.renderkit.rich.OutputTextRenderer.encodeAll(OutputTextRenderer.java:105)
     at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:815)
     at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:208)
If this is indeed a bug with the ADF components themselves attempting to lazy-load the values in the list, is there a way to force the component to simply load the entire list up-front instead of as the user scrolls? This would be an acceptable workaround for my application.
For the record, the View this page is based off runs flawlessly in the BC tester. Also, incase this helps any, the LOV is not based on any sort of Fk link / association. It is built upon accessor attributes (and bind variables and view criteria in the case of the mentioned cascading LOV).
Thanks in advance for the help,
Chris

Chris,
can you provide instructions how to reproduce this based on the HR schema (e.g. Departments/Employees table). If its easier for you to create a testcase, please send it to frank. /nimphius /@ oracle.com (please remove blanks and slashes) in a zip file, where you rename the "zip "extension to "unzip"
Frank

Similar Messages

  • I think this is a bug with rendering a string to a graphics2d

    Hiya,
    The following lines of code create the rendering error I am experiencing, to which I have tested on several computers.
    BufferedImage bi=new BufferedImage(100,100,BufferedImage.TYPE_INT_ARGB);
    Graphics2D g2d=bi.createGraphics();
    g2d.setColor(new Color(1f,0f,0f,0.5f));
    g2d.fillRect(0,0,100,100);
    RenderingHints renderingHints=new RenderingHints(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_ON);
    RenderingHints rh=new RenderingHints(RenderingHints.KEY_TEXT_ANTIALIASING,RenderingHints.VALUE_TEXT_ANTIALIAS_ON);
    renderingHints.add(rh);
    rh=new RenderingHints(RenderingHints.KEY_ALPHA_INTERPOLATION,RenderingHints.VALUE_ALPHA_INTERPOLATION_QUALITY);
    renderingHints.add(rh);
    g2d.setRenderingHints(renderingHints);
    g2d.setFont(new Font("Lucida",Font.BOLD,14));
    g2d.setColor(Color.BLACK);
    g2d.drawString("SQOWTGBC",10,30);
    When the destination image has an alpha of 1 the text is rendered with the correct antialiasing. However, in this example where the alpha is 0.5 the text is rendered with unwanted artifacts.
    [http://sphotos-b.ak.fbcdn.net/hphotos-ak-ash4/269344_590137484330481_704825569_n.jpg]
    This image has JPG artifacts but the unwanted rendering artifacts are still visible (ie the brighter edges)
    I am wondering if this is not in fact an error but the intended result. If so, how to I configure the graphics object to render the antialiased text without the artifacts?
    I could not find where to submit a bug on the oracle website for the life of me so maybe if someone would like to explain how this is achieved I will be very grateful.
    Penny
    x
    I have spent several hours trying to find if this has been reported as a bug or if there is a solution posted online but to no avail.
    Edited by: 995038 on Mar 20, 2013 5:32 AM
    Edited by: 995038 on Mar 20, 2013 5:33 AM
    Edited by: 995038 on Mar 20, 2013 5:36 AM

    I have made a work around for the moment.
    This work around uses a BufferedImage to render the antialiased text first which does not create the artefacts and then draw the image of the text to where the text should appear. I dont think this is an acceptable solution because in the case where there could be 1000s of TextLayout objects the increased overhead would be unacceptable.
    private void drawTextLayout(Graphics2D g2d,float x,float _y) {
    Rectangle r=_g2d.getClipBounds();
    bufferG2D.translate(r.x,r.y);
    Composite c=bufferG2D.getComposite();
    bufferG2D.setComposite(clearComposite);
    bufferG2D.fill(r);
    bufferG2D.setComposite(c);
    textLayout.draw(bufferG2D,_x,_y);
    bufferG2D.translate(-r.x,-r.y);
    _g2d.drawImage(buffer,r.x,r.y,null);
    the BufferedImage of bufferG2D would need to be large enough to cater for any size of text to be rendered to which I believe the size should be set to the screen size. This solution requires that there always be a _g2d clip assigned.
    Regards
    Penny

  • Unexpected rendering result with mixed frequency lineGraph

    Hi!
    When I use a mixed frequency lineGraph (ADF Faces Rich Client Component) to show a query returning two columns (timestamp and float), there is a little part of the line, at the right, that is always straight. The marker tooltip shows variable values as expected on the straight part. Is it possible that there is a rendering bug with the component? I can send a printscreen if someone wants to see what happens.
    Martin V.
    Edited by: user2638652 on 2010-01-08 13:56

    Hi!
    When I use a mixed frequency lineGraph (ADF Faces Rich Client Component) to show a query returning two columns (timestamp and float), there is a little part of the line, at the right, that is always straight. The marker tooltip shows variable values as expected on the straight part. Is it possible that there is a rendering bug with the component? I can send a printscreen if someone wants to see what happens.
    Martin V.
    Edited by: user2638652 on 2010-01-08 13:56

  • Very strange bug with compareTo: returning incorrect results

    Hello everyone! I have used the method compareTo many times to maintain my database project's entries. However recently I have discovered a bug, in which:
    a and b both being Storage type objects:
    private static class Storage {
    object data
    int nextData //an array stores the Storage objects
    int previousData //this uses an integer to locate previous in array
    Problem:
    ((Comparable)(a.data)).compareTo((Comparable)(b.data)) returns a 3, when a.data is clearly 5, and b.data is clearly 20.
    This is very strange, as the compareTo should return a -1 instead of a positive number. Is this a known bug with the compareTo method? I have been using it reliably for many programs but this is the first time it ever occurs to me.

    Problem:
    ((Comparable)(a.data)).compareTo((Comparable)(b.data))
    returns a 3, when a.data is clearly 5, and b.data is
    clearly 20.
    This is very strange, as the compareTo should return a
    -1 instead of a positive number. Is this a known bug
    with the compareTo method? I have been using it
    reliably for many programs but this is the first time
    it ever occurs to me.Not really... comparing Strings "5" to "20"
    is really the same as comparing "5" to "2"
    being the first character of the string, difference
    being, surprise, surprise = 3.
    If you want the Strings to be comparable that way you should left-fill them with spaces or zeros.
    Or, better still, override compareTo and make your Storage implement Comparable instead of all that casting of the data objects.

  • I am trying to create a print ready PDF from a word file with unacceptable results.

    I am trying to create a print ready PDF from a word file with unacceptable results.
    The word file has a trim size of 6” x 9”. It has been set to mirror margins with the inner, top and bottom margins set to 0.75”, the outer margin is set to 0.5” and the gutter to 0.14”.
    It doesn’t matter if I create the PDF from inside Word, or open Acrobat Pro 11.0.9 and click Create From File, while the resulting document size is correct and the odd numbered pages reflect the correct margins, the even numbered pages do not. This results in some text near the outer margin, as well as the page numbers being omitted.
    Does anyone know how to correct this?
    I just noticed that some of the odd numbered pages' text is also cropped. Apparently Acrobat is refusing to set side margins to smaller than 1" (@ 3cm).

    I'm away from my printer, so I'll try it later. Even so, the proposed test is irrelevant. I operate a small publishing house and am trying to upload certain novels to Ingram, the largest book distributor in the world. The specifications I've set are the specifications they've asked for. Since they've said that the results I'm obtaining are unacceptable, and since they demand submission in PDF form, this renders Acrobat Pro for Mac completely unacceptable for anyone in the publication industry. As far as I can tell, Adobe has a serious bug here that it needs to fix—and at once.

  • Bug in rendering  HTML content Apex 2.2 (in Apex 2.0 was OK)

    We have many PLSQL processes which are called through boolean function which return some message as well as the result.
    <br>
    function some_func (pid IN NUMBER,err_msg OUT NOCOPY VARCHAR2) RETURN BOOLEAN;<br>
    and at the end function looks like:
    <br>
      :err_msg := 'Pitanje <*b>'||TO_CHAR(p_id)||'<*/b> je OK!';
      RETURN TRUE;<br>
    Later, in "On load before header", we call this function and assign "err_msg" value to hidden item "P2_MESSAGE", placed on the same page. Assigment is done in an way like:
    <br>
      some_bool:=some_func (:P2_ID,:P2_MESSAGE);<br>
    In one HTML reagion, we put in "Source", code like:
    <br>
    <*class="t16dataalt">&P2_MESSAGE.</class><br>
    and until now, bold tags are applied as well as class-we get only text!
    <br>
    But now, in Apex 2.2, (original theme 16 used) in result we get all content as it is not recognized as HTML code.
    <br>
    In browser the result(in a case of OK result) is:
    <br>
    Pitanje <*b>1<*/b> je OK!<br>
    and the generated source is:
    <br>
    <*class="*t16dataalt">Pitanje &*lt;*b&*gt;1&*lt;/b&*gt; je OK!</*class="*t16dataalt"><br>
    Is that a bug or what?
    <br>
    Once more, before the same code was working nice, theme 2 used...
    <br>
    THX!
    <br>
    P.S
    <br>
    "*" is added to be read clearly!
    <br>
    P.S II
    <br>
    We have imported app that was exported on Apex 2.0 and the same problem occure!
    <br>
    So we think this is a bug in rendering HTML region!
    <br>
    Is there any hint to overcome that until patch come ?
    Message was edited by:
    Funky

    The issue is easy to reproduce. Create HTML region:
    User Interface Template-Reports Region
    Display point-Page template body
    Assign one hiden item in on load process with value:
    P2_MESSAGE := "< b>OK</ b<>";
    Put P2_MESSAGE in HTML Source with content like this:
    < class="t16dataalt">&P2_MESSAGE.</ class>
    and you have it!

  • Bug on "rendered"

    Hi all,
    I had the following case which shows the bug on "rendered"
    TEST 1:
    <af:inputText value="#{'Y' eq bindings.v1Return.inputValue}" id="it5">
    <af:inputText value="#{'Y' eq bindings.v2Return.inputValue}" id="it6">
    The screen output :
    true
    false
    TEST 2:
    <af:inputText value="#{'Y' eq bindings.v1Return.inputValue}" id="it5" rendered="#{'Y' eq bindings.v1Return.inputValue}" >
    <af:inputText value="#{'Y' eq bindings.v2Return.inputValue}" id="it6" rendered="#{'Y' eq bindings.v2Return.inputValue}" >
    The screen output :
    true
    TEST 3:
    <af:panelGroupLayout id="pgl7" rendered="#{'Y' eq bindings.v2Return.inputValue}">
    .....// some af:outputText here
    </af:panelGroupLayout >
    The screen shows correctly except that this panelGroupLayout(with all children) is hidden
    TEST 4 (Bug):
    <af:panelGroupLayout id="pgl7" rendered="#{'Y' eq bindings.v1Return.inputValue}">
    .....// some af:outputText here
    </af:panelGroupLayout >
    Loading error... The page does not show up.
    TEST 5:
    <af:panelGroupLayout id="pgl7" rendered="#{'Y' eq 'Y'}">
    .....// some af:outputText here
    </af:panelGroupLayout >
    Everything shows correctly in the screen
    =============================
    I need to use the EL expression to control this panelGroupLayout rendered or not using v1Return and v2Return. They are the return values by invokeAction.
    However, it seems that there is a bug here...

    <UIXInclude><tearDownVisitingContext> Tear down of include component context failed due to an unhandled exception.
    java.util.NoSuchElementException
         at java.util.ArrayDeque.removeFirst(ArrayDeque.java:251)
         at java.util.ArrayDeque.pop(ArrayDeque.java:480)
    Action: Ensure that command line tool "adrci" can be executed from the command line.
         at oracle.dfw.impl.incident.ADRHelper.invoke(ADRHelper.java:1052)
         at oracle.dfw.impl.incident.ADRHelper.createIncident(ADRHelper.java:786)
         at oracle.dfw.impl.incident.DiagnosticsDataExtractorImpl.createADRIncident(DiagnosticsDataExtractorImpl.java:688)
         ... 19 more
    I have soloved this wierd problem, it is not because of the component but position... see below...
    This is my page:
    <af:root>
    <af:panelGroupLayout1>
    <af:panelGroupLayout2>
    </af:panelGroupLayout2>
    <af:panelGroupLayout3>
    </af:panelGroupLayout3>
    <af:panelGroupLayout4>
    <af:inputText value="123" rendered="#{'Y' eq bindings.v1Return.inputValue}" id="it5">
    </af:panelGroupLayout4>
    </af:panelGroupLayout1>
    <af:root>
    The above page works fine.
    However if I remove panelGroupLayout4:
    <af:root>
    <af:panelGroupLayout1>
    <af:panelGroupLayout2>
    </af:panelGroupLayout2>
    <af:panelGroupLayout3>
    </af:panelGroupLayout3>
    <af:inputText value="123" rendered="#{'Y' eq bindings.v1Return.inputValue}" id="it5">
    </af:panelGroupLayout1>
    <af:root>
    Expression Error when loading the page
    So, on my first post, I add a <af:panelGroupLayout> to TEST 4, then It Is Working
    <af:panelGroupLayout>
    <af:panelGroupLayout id="pgl7" rendered="#{'Y' eq bindings.v1Return.inputValue}">
    .....// some af:outputText here
    </af:panelGroupLayout >
    </af:panelGroupLayout >
    So wierd..

  • Has anyone seen this BUG with Time Warp and Dissolve?

    I'm doing some real basic slow-mo clips, transitioning with various dissolve wipes. I've come across a problem that is extreemly frustrating! I'm wondering if anyone has insight on a fix or if Adobe does service packs or fixes that I might be able to install.
    If you put two clips adjacent to each other on a timeline, apply time warp, set percentage to say 30% of realtime, then apply a dissolve between the clips, clip B, the outclip will play in reverse for a period equal to about 1/3 of the duration of the clip.
    This is true scrubbing through the timeline and even rendering.
    VERY ANNOYING!
    I'm going to call support tomorrow, but that's not going to help me get my project finished any sooner since this is a critical element in this composition. I've tried the time remapping method, but the frame-blend is no match for the pixel motion of time warp.

    Steve,
    I think your post #11 was being sarcastic, but you left a little wiggle room for it not to be. With the sarcastic interpretation, I must add my thoughts:
    Here is the link to the Adobe bug report form
    . It is important that users who discover bugs with reproducible steps file them - otherwise they don't stand a chance of ever getting fixed. Steven Gotz's advice was sound in this regard.
    As to the discussion of workarounds - since this is a User-to-User forum, the best that we as a community can do is help each other out with workarounds, since none of us here have the power to actually fix anything.
    The important thing to glean from SG's post is the definite need to file a bug report.

  • BUG with Memory CAS-Latency with MSI i848P Neo-LS BIOS

    I have a bug with MSI i848P Neo-LS BIOS. I try many MSI i848P with same trouble : the CAS Latency is always set to 2.0 even if the memory is CAS Latency 2.5.
    It doesn't depend on PSU or others things (graphics card,...).
    Try with Pentium 4C 2.6 or 2.8
    But I have just one brand of memory (but many different sticks). Chips reference are VT56DD32M8PC-5 (256 or 512 Mb). This memory are reference as Cas Latency 2.5
    If I set memory timings on SPD or manual : same result !!!
    If I set memory speed on AUTO or 400 MHz : same result  !!!
    If I set other timings, then they are save correctly (ie : RAS# precharge set to 3 or 4).
    I check timings with latest version of Memtest86+ V1.0 : http://www.memtest.org/
    and of course, I get many errors.
    The same memory tested on others mobo, give good results.
    I try Windows XP installation and I get....  blue screens.
    With some memory sticks : I have this message "memory timing too tighly",
    if I press F1 to continue: then I get a memory cas latency of 2.5 with memtest86+ and then no error.
    I try BIOS revision 1.0 (default) and 1.2: same result !!!
    So, as I said before, I think this is a bug with the BIOS. I agree that a BIOS cannot detect correctly all kind of memory, but if you set memory timings manualy, then it must be set as you want ! ?
    Any idea...
    Thanks

    H0 Alex,
    You are correct.I have the same problem with my 875p neo lsr on bios 1.9. TH0S 0S B0OS BUG.but everyone says your psu is not enough or your rams isnt  on the MSI Memory Compatability List.
    why all of rams I try give same result?
    MS0 boards works only with 10 or 20 ram.you don't say customer why you use this rams?
    why in asus boards many os these rams working properly.This rams isnt on the MSI Memory Compatability List.but working.I try many no name rams and results are very good in all of the tests.
    In my opinion MS0 bioses doesnt work good enough.
    You don't drive a car.Car Drives you.

  • Possible bug with Triggers tab

    Hi there,
    I'm using 1.0.0.12.15 and think there is a bug with the triggers tab. When I navigate to my table (which has one trigger on it), and then click on the Triggers tab, the trigger shows up multiple times. It's probably not a coincidence that it shows up the same number of times that there are columns :)
    Looks like a missing join condition somewhere.
    Hope this helps

    Tracked this one down too...
    SQL Developer is getting the triggers like this:
    Select dt.trigger_NAME, dt.trigger_type, dt.triggering_Event, dt.status, do.object_id , do.owner sdev_link_owner, dt.trigger_NAME sdev_link_name,'TRIGGER' sdev_link_type
    from all_triggers dt, all_objects do
    where do.owner = :OBJECT_OWNER
    and dt.owner = :OBJECT_OWNER
    and dt.trigger_name = do.object_name
    and dt.table_name = :OBJECT_NAME
    However, we got other objects (mainly tables) with the same name as the trigger. Not specifying the object type will identify them the same way as the trigger, resulting them all to be included in the select!
    Adding "and do.object_type = 'TRIGGER'" will solve the problem.
    K.

  • Errors with characters result in questoin marks

    For some reason my name, although appearing correctly in the My Info portion of this discussion feature of Apple's website, appears with a question mark after a somewhat truncated last name in My Settings, and probably on varoius posts.
    This is an error and should be corrected, however I do not know where to report a bug with Apple's website.

    Hello Again Bojan!
    In your Profile, I do see the ? at the end of your Name.
    You should be able to edit that here My Info.
    But you cannot change the Alias Bojan Landekic.
    Although you can't change the Alias of the account you are using, you can create a new Discussions Account, with an Alias that you prefer.
    You cannot delete your present account. Just stop using it, after you have created a new one.
    You can use all of the same info in the new account, Email address, Edited User name, etc, just be sure to insert a new Alias of your choosing.
    But your Level(0), Points(0), Total Posts(11), Total Posts Online(11) and Registered Date(9/20/06), will not be transferred.
    In the new account, your Post Counts, Points, & Level Status will all start at 0. Your Registered Date will be the date you create the new account.
    Your old account, with your previous counts & level, will still be viewable, under the old Alias.
    After you quit using the old account, those posts, will be archived. What that means is, that if there are no additional responses in the Threads they reside in, the Topics will get continually pushed down on the Topics list. After a certain amount of time, maybe 2 to 6 months, the Threads will be locked, so no responses can be entered. But the Threads will not disappear.
    Threads in heavily trafficked Forums, may be archived more rapidly than those in areas, with less activity.
    The Topics that you started using the old account, will show your Old Alias, in the Author field of a main forum page, but eventually, readers will have to keep going to the succeeding pages to view them.
    If someone were to do a Discussions Search, using these parameters:
    Restrict by Category or Forum: All Categories
    Restrict by Date Range: All
    Restrict by Username: Your Old Alias
    all of your posts, created since about 11/13/05, would be found.
    To create a new account,
    Log out of Discussions. You also may have to delete the Apple Cookies in your browser preferences, but I'm not sure this is necessary. Then follow either of these instructions.
    -How Do I Create My Account?
    If you haven't signed up for an Apple ID for the Apple Store or AppleCare Support website (or forgot your old one), you can create a new account on the My Info webpage. Just click the "create one" link on the right side of the My Info page. Choose your country location and preferred language from the appropriate pop-up menus, then click Create Account. In the resulting page, enter a unique name (such as your email address) in the Apple ID field and fill in your other relevant information accordingly (fields marked with * are required). Click Continue to complete the process.
    -To register, click Login in the sidebar on the right side of the Discussions page. In the resulting page, click the "create one" link at the bottom of the page, then click "create one" in the subsequent page and follow the instructions to create an Apple ID. For more information, see the Apple ID FAQ page.
    Those instructions, and more info, can also be viewed by clicking on ?Help & Terms of Use, in the right column of Discussions pages.
    And Thank You, for extending the courtesy, of awarding stars in Discussions!
    ali b

  • Optimization bug with C++ inlining

    Hi,
    While evaluating Sun Studio 11 I have identified an optimization bug with C++ inlining.
    The bug can easily be reproduced with the small program below. The program produces
    wrong results with -xO2, because an inline access function always returns the value 0.0
    instead of the value given on the commandline:
    djerba{ru}16 : CC -o polybug  polybug.cc
    djerba{ru}17 : ./polybug 1.0
    coeff(0): 1.000000
    djerba{ru}18 : CC -o polybug -xO2 polybug.cc
    djerba{ru}19 : ./polybug 1.0
    coeff(0): 0.000000            <<<<<<<<<< wrong, should be 1.000000This occurs only with optimization level O2; levels below or above O2 don't
    exhibit the bug.
    Compiler version is
    Sun C++ 5.8 Patch 121017-01 2005/12/11
    on Solaris 8 / Sparc.
    I include a preliminary analysis at the end.
    Best Regards
    Dieter R.
    -------------------- polybug.cc -------------------------
    // note: this may look strange, but this is a heavily stripped down
    // version of actual working application code...
    #include <stdio.h>
    #include <stdlib.h>
    class Poly {
      public:
        // constructor initializes number of valid coefficients to zero:
        Poly() { numvalid = 0; };
        ~Poly() {};
        // returns coefficient with index j, if valid. Otherwise returns 0.0:
        double coeff(int j) {
         if (j < numvalid) {
             return coefficients[j];
         } else {
             return 0.0;
       // copies contents of this Object to other Poly:
        void getPoly(Poly& q) { q = *this; };
        // data members:
        // valid coefficients: 0 ... (numvalid - 1)
        double coefficients[6];
        int numvalid;
    void troublefunc(Poly* pC) {
        // copies Poly-Object to local Poly, extracts coefficient
        // with index 0 and prints it. Should be the value given
        // on commandline.
        // Poly constructor, getPoly and coeff are all inline!
        if (pC) {
         Poly pol;                      
         pC->getPoly(pol);
         printf("coeff(0): %f\n",pol.coeff(0));
    int main(int argc,char* argv[]) {
        double d = atof(argv[1]);
        // creates Poly object and fills coefficient with index
        // 0 with the value given on commandline
        Poly* pC = new Poly;
        pC->coefficients[0] = d;
        pC->numvalid = 1;
        troublefunc(pC);   
        return 0;
    The disassembly fragment below shows that the access function coeff(0), instead
    of retrieving coefficient[0] simply returns the fixed value 0.0 (presumably because the
    optimizer "thinks" numvalid holds still the value 0 from the constructor and that therefore
    the comparison "if (i < numvalid)" can be omitted).
    Note: disassembly created from code compiled with -features=no%except for simplicity!
    00010e68 <___const_seg_900000102>:
            ...     holds the value 0.0
    00010e80 <__1cLtroublefunc6FpnEPoly__v_>:
       10e80:       90 90 00 08     orcc  %g0, %o0, %o0      if (pC) {   
       10e84:       02 40 00 14     be,pn   %icc, 10ed4
       10e88:       9c 03 bf 50     add  %sp, -176, %sp
                                                       local Poly object at %sp + 120
                                                             numvalid at %sp + 0xa8 (168)
       10e8c:       c0 23 a0 a8     clr  [ %sp + 0xa8 ]      Poly() { numvalid = 0; };
                                                             pC->getPoly(pol):
                                                             loop copies *pC to local Poly object
       10e90:       9a 03 a0 80     add  %sp, 0x80, %o5
       10e94:       96 10 20 30     mov  0x30, %o3
       10e98:       d8 5a 00 0b     ldx  [ %o0 + %o3 ], %o4
       10e9c:       96 a2 e0 08     subcc  %o3, 8, %o3
       10ea0:       16 4f ff fe     bge  %icc, 10e98
       10ea4:       d8 73 40 0b     stx  %o4, [ %o5 + %o3 ]
                                                             pol.coeff(0):
                                                             load double value 0.0 at
                                                             ___const_seg_900000102 in %f0
                                                             (and address of format string in %o0)
       10ea8:       1b 00 00 43     sethi  %hi(0x10c00), %o5
       10eac:       15 00 00 44     sethi  %hi(0x11000), %o2
       10eb0:       c1 1b 62 68     ldd  [ %o5 + 0x268 ], %f0
       10eb4:       90 02 a0 ac     add  %o2, 0xac, %o0
       10eb8:       82 10 00 0f     mov  %o7, %g1
                                                             store 0.0 in %f0 to stack and load it
                                                             from there to %o1/%o2
       10ebc:       c1 3b a0 60     std  %f0, [ %sp + 0x60 ]
       10ec0:       d2 03 a0 60     ld  [ %sp + 0x60 ], %o1
       10ec4:       d4 03 a0 64     ld  [ %sp + 0x64 ], %o2
       10ec8:       9c 03 a0 b0     add  %sp, 0xb0, %sp
                                                             call printf
       10ecc:       40 00 40 92     call  21114 <_PROCEDURE_LINKAGE_TABLE_+0x54>
       10ed0:       9e 10 00 01     mov  %g1, %o7
       10ed4:       81 c3 e0 08     retl
       10ed8:       9c 03 a0 b0     add  %sp, 0xb0, %sp
    Hmmm... This seems to stress this formatting tags thing to its limits...

    Thanks for confirming this.
    No, this happens neither in an Open Source package nor in an important product. This is an internal product, which is continuously developed with Sun Tools since 1992 (with incidents like this one being very rare).
    I am a bit concerned with this bug though, because it might indicate a weakness in the area of C++ inlining (after all, the compiler fails to correctly aggregate a sequence of three fairly simple inline functions, something which is quite common in our application). If, on the other hand, this is a singular failure caused by unique circumstances which we have hit by sheer (un)luck, it is always possible to work around this: explicitly defining a assignment operator instead of relying on the compiler-generated one is sufficient to make the bug go away.

  • New LOV Bug in JHeadstart 10.1.3.1.26

    Software Versions:
    JHeadstart 10.1.3.1.26
    JDeveloper 10.1.3.1.0
    I belive I have discovered a new bug with LOV's in the newest release of JHeadstart. When a value is selected from the LOV pop-up window, the value is not visually being returned to the main table-forum. The update is only visually invoked when the page is saved, or sometimes, when another row is selected on the page via the table-form's radio buttons.

    Matthew,
    To work around the issue of copying back to quick search, you can add the following property to lovItemInQuickSearchBean.vm
    <managed-property>
    <property-name>itemsToClear</property-name>
    <list-entries>
    #foreach ($item in ${item.dependentItemsToClear})
    <value>Search${item.bindingName}</value>
    #end
    </list-entries>
    </managed-property>
    To fix the issue in the table, you have to change the DepartmensView ViewObject: the EmployeeId attribute added as part of the Employees lookup EO should have the Key property unchecked. If this property is checked, the key of the row changes when you select a different manager, causing unexpected behavior.
    Steven Davelaar,
    JHeadstart Team.

  • Problem with rendering my project

    Hello,
    today I tried to render my latest project in Premiere Pro CS6 to upload it to youtube. With an estimated file size of  ~2 Gigabytes I started the rendering process and waited for it to finish (about 50 minutes).
    After it had finished with rendering I checked the file and what I saw was a 35 Megabytes file with the worst video quality one can even imagine. What is wrong with my premiere pro -.-
    I've put many time and effort in my project and now it doesn't render properly. The interesting thing is that the preview in the full resolution inside my premiere pro application looks way better than the rendering result. WTF!?
    Later I tried the option "render workspace" which took just about the same time (about 50 minutes) and brought me 7 rendered video previews... summed up 40 Gigabytes.
    I am like kinda mad and sad at the same time and really can't figure out what is wrong. Please help me.
    Here are my Output settings:
    H.264 codec
    1920 * 1080
    29,97 FPS
    high profile and 5.1
    Bitrate: I tried everything from 8 to 100 (output always about ~40 Megabytes)
    maximum depth
    and maximum render quality
    Please mention it if you need more information about this as I will be happy to provide detailed information and excuse my bad english, it isn't my mother tongue.

    Yeah, but as you could may imagine i watched the render result
    I could just go ahead and render it in 240p same result... Its way off in points of quality even compared to the preview on the top right
    I mean I am not using premiere pro for the first time and this is the first time that i have to encounter this kind of problem. maybe I should try to render some of my old projects to see if they too result in 45 Mb ****** videos.
    Someone help me

  • CS6 gives me bad rendering results on Vimeo and the MacBook. Plays fine on the render PC.

    Hi there,
    After upgrading to CS6, i'm facing some pretty severe problems with rendering.
    My edit machine - my windows machine - plays the clips fine, but in the moment I watch the clips on my MacBook, iPad, Vimeo, Youtube some really nasty artifacts starts to show.
    I just made a clean install of Windows 7 with all the latest drivers.
    The system is:
    Windows 7
    Geforce GTX 570
    12 GB ram
    Intel i7 4,1ghz
    I use Magic Bullet Looks for grading.
    I guess that is what's relevant!?
    I'm really absolutely clueless about what is causing this. I tried to render with Media Encoder, as well as the Premiere. Same result.
    Attached is a screendump from Vimeo that shows the problem.

    Really? Are you on a PC?
    I tried on 3 different macs now + iPads. I have the same artifacts and glitches as seen on the first attached image.
    On my PC though, it looks fine!
    So weird...
    Just uploaded a quick clip, where it originally fades from black. On my screen, it fades from grey, and stutters a lot. Really a pain to watch really.
    https://vimeo.com/45768812
    pw: cs6

Maybe you are looking for

  • How to use scanner ADF with SANE in linux using Morena

    Hi! I'm using Morena libraries to access my scanner in my linux by the SANE backend. I'm able to scan one page, but I just can't scan all the pages on the scanner. I've tried loops and status but nothing successfull. Using linux utility "scanadf" wor

  • Xorg on VirtualBox with vboxdrv is impossible to set up

    Hello everyone, I've been trying to setup xorg-1.6 on VirtualBox 2.2.2 and I've had no success at all. The furthest I've been able to get it is freezing the guest OS with twm running, no mouse, no keyboard, no ctrl+alt+backspace to kill it. I've sear

  • Add font for virtualized Office 2013

    Hi, I need to add a font for Office 2013. Usually, a font should be added to Windows\Fonts. I believe it should work for virtual Apps too? Can we do it on package level? Thanks. --- When you hit a wrong note its the next note that makes it good or ba

  • Volume mute button

    Hi, i just installed windows 7 on my dv5 1133ca before the installation, when i press the volume mute button, it normally goes red (mute) and while (not mute). after the installation, nothing happens to the LED when i press the button, but it does sh

  • DB Installtion error at update statistics

    Hi, During DB installation at Update database statistics Installation error. Error shows that MTU- 03010 Execution of the command "/sapmnt/QMS/exe/brconnect   '-u' '/' '-c' '-f' 'crsyn -o 'SAPQMS' finished with status TST_ERROR brconnect.log error /u