Confused about the join output

This one shows employee and there manager
select e.last_name employee ,e.hire_date,s.last_name manager ,s.hire_date
from employees e , employees s
where e.manager_id=s.employee_id
Dont know what it shows
select e.last_name employee ,e.hire_date,s.last_name manager ,s.hire_date
from employees e , employees s
where[b] s.manager_id = e.employee_id
If I cange manager_id , employee_id's table ..result are different ...I do not
understand Why ?
please help.

example:
If we take your first query (the one that's correct) and order it by the employee surname we get (let's just look at the first few rows)...
SQL> ed
Wrote file afiedt.buf
  1  select emp.last_name employee, emp.hire_date, mgr.last_name manager, mgr.hire_date
  2  from employees emp, employees mgr
  3  where emp.manager_id=mgr.employee_id
  4* order by emp.last_name
SQL> /
EMPLOYEE                  HIRE_DATE MANAGER                   HIRE_DATE
Abel                      11-MAY-96 Zlotkey                   29-JAN-00
Ande                      24-MAR-00 Errazuriz                 10-MAR-97
Atkinson                  30-OCT-97 Fripp                     10-APR-97
Austin                    25-JUN-97 Hunold                    03-JAN-90
Baer                      07-JUN-94 Kochhar                   21-SEP-89
Baida                     24-DEC-97 Raphaely                  07-DEC-94
Banda                     21-APR-00 Errazuriz                 10-MAR-97
Bates                     24-MAR-99 Cambrault                 15-OCT-99Now if we take your second query and this time order it by the manager last_name (again looking at the first few rows)...
SQL> ed
Wrote file afiedt.buf
  1  select emp.last_name employee, emp.hire_date, mgr.last_name manager, mgr.hire_date
  2  from employees emp, employees mgr
  3  where mgr.manager_id=emp.employee_id
  4* order by mgr.last_name
SQL> /
EMPLOYEE                  HIRE_DATE MANAGER                   HIRE_DATE
Zlotkey                   29-JAN-00 Abel                      11-MAY-96
Errazuriz                 10-MAR-97 Ande                      24-MAR-00
Fripp                     10-APR-97 Atkinson                  30-OCT-97
Hunold                    03-JAN-90 Austin                    25-JUN-97
Kochhar                   21-SEP-89 Baer                      07-JUN-94
Raphaely                  07-DEC-94 Baida                     24-DEC-97
Errazuriz                 10-MAR-97 Banda                     21-APR-00
Cambrault                 15-OCT-99 Bates                     24-MAR-99You can see that the data is the same but you have transposed the employee details into the manager columns and the manager details into the employee columns.

Similar Messages

  • I'm confused about the apple ID transition from my aol screen name. Does it continue to use my aol email as my apple ID, converting it somehow or do I need to provide a new email address or just create a new username for the apple ID?

    I'm confused about the transition to an apple ID that doesn't use my aol email to sign in. The instructions are vague and ambiguous. Any help would be appreciated.

    OK, so if your current Apple ID using your AOL Username (like johndoe), then you need to log onto Manage your Apple ID and EDIT that AOL Username to a valid email address: Apple - My Apple ID
    If you have an AOL email address (like [email protected]), and you are not using that as another Apple ID, you can change the AOL Username Apple ID to that. Otherwise, you can change it to any valid email address (which you will have to verify when you change to it).
    Hope that clears it up. Post back if it doesn't!
    Cheers,
    GB

  • Confuse about the document

    Hi,all . From the document ,i had confused about the following .
    Automatic Undo Management in Oracle RAC
    url >> http://docs.oracle.com/cd/B19306_01/rac.102/b28759/adminrac.htm#CHDGAIFJ
    Oracle automatically manages undo segments within a specific undo tablespace that is assigned to an instance. Only the instance assigned to the undo tablespace can modify the contents of that tablespace. However, each instance can read the undo data blocks created by any instance. Also, when performing transaction recovery, any instance can update any undo tablespace, as long as that undo tablespace is not currently being used by another instance for undo generation or transaction recovery
    what's the meaning of above that is bold ?

    Say you're running a 2-node RAC and node 2 dies. The services which were running on node 2 now get re-located to node 1. It is then possible that node 1 will perform transaction rollback/recovery and, when it does so, it will need to be able to read from node 2's undo tablespace (and maybe update the undo segment headers in node 2's undo tablespace, too).

  • Confused about the battery...

    Hello everyone,
    I'm from Pakistan and I just switched to Mac almost 2-3 weeks ago. Since, they have proper apple authorized dealers here so I finally decided to get one for myself. I had some confusion about the battery and my system and now I'm getting very much concerned and worried as a matter of fact.
    I installed coconut battery (as few people suggested me) to check my battery status. First of all, it shows the age of my Mac as 5 months, which is pretty surprising since I got a brand new one and even the condition is of a brand new one so I have no clue why did it say that.
    Secondly, I would like to tell the condition of my battery:
    Current Battery Charge: 3591 mAh (I'm using on battery power right now)
    Maximum Battery charge: 4068 mAh
    88%
    Current Battery Capacity: 4068 mAh
    Original Battery Capacity: 4100 mAh
    99%
    Additional info:
    Battery-Loadcycles : 12
    Age of your Mac: 5 months
    Charger connected: No
    Battery is charging: No
    I am just concerned that my battery current capacity decreased to 99% after just 12 load cycles. Why is that? Some people tell that they have a 100% even after using it for a long time and other than that does anyone have any idea why is the age being shown as 5 months when I have only used it for 2 weeks.
    I'm really confused.
    Another suggestion that I want is that in Pakistan, we are having major electricity load shedding so I can't keep it on AC power most of the time so if my computer is shut-down and being charged. If the electricity goes and when it comes back and it starts charging to the point from where it left, will that waste the load-cycle or will it continue to charge it from there without wasting cycle? Does that affect the battery life? (Assuming that the computer is shut-down while being charged)
    Last thing, should I use it mostly on AC power or is it better to charge it and then drain the battery and then charge it and then use. Till how much percent should I keep using on the battery power and then connect the Magsafe connector?
    Please help people
    I'd highly appreciate if you could answer my questions.
    Thank you.

    I was told that it is best to keep it plugged in and connected to the charger when you can, but if you are not able to do that then just use battery power. I just know you don't want too many cycles, which means you don't want to drain the battery completely then fully recharge it. You should calibrate the battery, which is pretty much just draining battery then recharging it, every couple of months if you keep it plugged into the charger and don't use just the battery often.

  • Confused about the meaning of  Time Quota Types

    I am learning SAP-HCM on IDES 6.0. I am confused about the meaning of Time Quota Type. I have gone thru the SAP documentation, but still not clear about it. Please help me with a few examples. How is it different from Absence Type?

    Hi Gopal ,
    Absences are very generic ones that we create which needs to be reflected in IT2001 and dedcution can happen.
    Absence Quotas are the limited entitlement that is fixed say ur eligible for 10 days sick leave so here this is a Quota for each year  and so becomes a Quota say Sick leave Quota =10 and will be seen in IT2006.
    Now an absence needs to be linked to this Quota for dedcution.
    An absence can be or may not be linked to a Quota.This depends on business Requirement.
    Let me know if u have further Questions.
    Thanks
    Swati

  • Confused about the 'cpu fsb clock frequency' setting, etc., in cell in bios

    just got a new k8n neo2-f nforce3 board with an a64 3500+ venice chip.  It is properly recognized in the bios and windows as an a64 3500+ at 2.2ghz, but I'm confused about the cell menu settings in the bios. I see a 'cpu fsb clock frequency' which was automatically set at 200mhz, but the fsb runs at 1Ghz (1000mhz), so what is the 'fsb clock frequency' if not equal to the cpu fsb?  Is 200 the correct setting for that?  Should I need to change any of the other settings in here?  I wonder, because my 3dmark03 score only went up 200 points from the same system with a AthlonXP 2500+ chip and kt4avl mobo, which seems like a low increase to me.....

    I would set that to Manual in BIOS, so that you can incremently increase the CPU speed without causing a sudden crash. Each system is different and operates within the specs of not only the CPU, but system memory and PCI-E add-ins as well. Your video card is the primary driver behgind your 3DMark scores...but you haven't listed that?!

  • Confused about the default schema

    Hi,
    I am a little bit confused about the schema concept.
    I want to create a new schema called APP and then create several users and roles based on the schema APP. The default schema for the users should be APP achema.
    How can I make the schema APP the default schema for the new users that I am creating?
    I feel that there are some schema design concepts that I have to learn. Is there any resource on the internet that I can read and learn more about oracle schema design best practices?
    Any help would be appreciated,
    Ali

    A schema holds object definitions, and in the case of table & index objects the schema also holds the data.
    A user owns the schema.
    Therefore the user 'owns the definitions (including any functions, procedures, sequences, tabels, etc.)
    Other users may be granted access to some, or all, of the objects in a schema. This is done through the 'GRANT ...' command. For example, consider the following steps:
    1) create user app_owner
    2) create table object test owned by the app_owwner
    3) create user app_user
    4) grant select, update, insert and delete on app_owner's test table to app_user
    5) add synonyms to avoid needing to qualify the table's schema name.
    done as follows:
    oracle@fuzzy:~> sqlplus system
    SQL*Plus: Release 10.2.0.1.0 - Production on Mon Apr 3 20:07:32 2006
    Copyright (c) 1982, 2005, Oracle.  All rights reserved.
    Enter password:
    Connected to:
    Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production
    Create the app owner userid. Note there is no need to ever log in to that user, even to create tables.
    SQL> create user app_owner
      2  identified by xyz
      3  account lock
      4  quota unlimited on users
      5  default tablespace users
      6  temporary tablespace temp;
    User created.
    Creating objects in a schema can be done by providing the schema name, or by switching schema in newer versions of Oracle
    SQL> create table app_owner.test ( t number );
    Table created.
    Create a userid that will access the table. Set that userid up to access the database and (for future) give it the capability to create it's own synonyms
    SQL> create user app_user
      2  identified by xyz
      3  temporary tablespace temp;
    User created.
    SQL> grant create session to app_user;
    Grant succeeded.
    SQL> grant create synonym to app_user;
    Grant succeeded.
    Now give the user access to the objects
    SQL> grant select, update, insert, delete on app_owner.test to app_user;
    Grant succeeded.
    Let's test it out. Insert by qualifying the schema name on the object, then create a synonym to avoid using schema, and try it all using the synonym
    SQL> connect app_user/xyz
    Connected.
    SQL> insert into app_owner.test values (4);
    1 row created.
    SQL> create synonym test for app_owner.test;
    Synonym created.
    SQL> insert into test values (3);
    1 row created.
    SQL> select * from test;
             T
             4
             3
    SQL>  Note that some people want to use PUBLIC grants and PUBLIC synonyms. This is a real bad idea if you want to ensure long term security of the data and want to host several different applications in the same Oracle instance.
    This, and a whole lot more, is in the 'Concepts' manual for your version of the database at http://docs.oracle.com

  • Confuse about the injecting entity in EJB 3.0?

    Hi all,
    I have an customersBean which is inherit from customersRemote and my problem is i' am little confuse about injecting the entity(customer).
    Where can you apply the EntityManagerFactory is it outside on EJB or Inside the EJB? means outside EJB is use the web application or java application. i have and example.
    this is inside on EJB...............
    public class CustomersBean implements com.savingsaccount.session.CustomersRemote {
    @PersistenceContext(unitName="SavingAccounts")
    EntityManagerFactory emf;
    EntityManager em;
    /** Creates a new instance of CustomersBean */
    public CustomersBean() {
    public void create(int id, String name, String address, String telno, String mobileno)
    try{
    //This is the entity.
    Customer _customer = new Customer();
    _customer.setId(id);
    _customer.setName(name.toString());
    _customer.setAddress(address.toString());
    _customer.setTelno(telno.toString());
    _customer.setMobileno(mobileno.toString());
    em = emf.createEntityManager();
    em.persist(_customer);
    emf.close();
    }catch(Exception ex){
    throw new EJBException(ex.toString());
    in web application, i'm using the @EJB in customer servlets.
    public class CustomerProcessServlet extends HttpServlet {
    @EJB
    private CustomersRemote customerBean;
    blah blah inject directly coming request field from jsp.
    }

    Hi all,
    I have an customersBean which is inherit from customersRemote and my problem is i' am little confuse about injecting the entity(customer).
    Where can you apply the EntityManagerFactory is it outside on EJB or Inside the EJB? means outside EJB is use the web application or java application. i have and example.
    this is inside on EJB...............
    public class CustomersBean implements com.savingsaccount.session.CustomersRemote {
    @PersistenceContext(unitName="SavingAccounts")
    EntityManagerFactory emf;
    EntityManager em;
    /** Creates a new instance of CustomersBean */
    public CustomersBean() {
    public void create(int id, String name, String address, String telno, String mobileno)
    try{
    //This is the entity.
    Customer _customer = new Customer();
    _customer.setId(id);
    _customer.setName(name.toString());
    _customer.setAddress(address.toString());
    _customer.setTelno(telno.toString());
    _customer.setMobileno(mobileno.toString());
    em = emf.createEntityManager();
    em.persist(_customer);
    emf.close();
    }catch(Exception ex){
    throw new EJBException(ex.toString());
    in web application, i'm using the @EJB in customer servlets.
    public class CustomerProcessServlet extends HttpServlet {
    @EJB
    private CustomersRemote customerBean;
    blah blah inject directly coming request field from jsp.
    }

  • Confused about the Business Component Developer Certification

    Excuse me, I´m confused...
    How many certifications are about the Business Component Certification? Three??
    I thought there was just one, the Business Component Developer, which is the 1Z0-860 code...
    but I also have seen these:
    Java EE 6 Enterprise JavaBeans Developer Certified Expert Exam - 1Z0-895
    Java EE 6 Java Persistence API Developer Certified Expert Exam - 1Z0-898
    and now I don´t know which one to study for...
    Are these better? Or just different? Or are the last ones just the new ones and the 1Z0-860 is obsolete?
    Thanks in advance!

    938334 wrote:
    Excuse me, I´m confused...
    How many certifications are about the Business Component Certification? Three??
    I thought there was just one, the Business Component Developer, which is the 1Z0-860 code...
    but I also have seen these:
    Java EE 6 Enterprise JavaBeans Developer Certified Expert Exam - 1Z0-895
    Java EE 6 Java Persistence API Developer Certified Expert Exam - 1Z0-898
    and now I don´t know which one to study for...
    Are these better? Or just different? Or are the last ones just the new ones and the 1Z0-860 is obsolete?
    Thanks in advance!The basic answer to look at the question topics for each exam and and see what fits you. The question topcis should yield insight.
    Additionally the following exam is an OCP
    http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=41&p_org_id=&lang=&p_exam_id=1Z0_860
    The other two are OCE, as far as I can tell. Typically more of an area in depth, but OCE's can vary.
    http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=41&p_org_id=&lang=&p_exam_id=1Z0_895
    http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=41&p_org_id=&lang=&p_exam_id=1Z0_898
    I also notice the earlier exam is J2EE5; the later exams are J2EE6
    Hope this helps a little, but this java stuff is too hard for me and i must stackdump.

  • So confused about the size.... how exactly should i set them?

    i've written codes like:
    JFrame fr = new JFrame ("FR");
    JTabbedPane tp = new JTabbedPane();
    JPanel pa = new JPanel();
    JTextArea ta = new JTextArea;
    fr.add(tp.add(pa.add(ta)));
    Questions:
    1. How do I set the SIZE (dimension) of the GUI (the whole thing)
    2. How do I set the size of the TextArea
    I was thinking:
    setSize = set the default size of a panel/compent
    setMaximumSize = set the maxium area of that panel/compent (that'll allow you to drag to )
    setMinimumSzie = set the smallest window/pan/comp that you can drag to
    i tried fr.setSize or whatever... nothing just work.....!!
    Sorry... im really a beginner and i don't know where can I have a good read about all these Java.awt objects... JPanel/Frame/tabbedPanel/TextArea/button/watever.... sooo many and so easy to be confused....
    sorry i about the poor english... hope someone can help me out....
    thanks!

    Some helpful resources in the tutorial:
    Trail: Creating a GUI with JFC/Swing
    1 - Lesson: Using Swing Components
    a) - A Visual Index to the Swing Components
    b) - Using Top-Level Containers
    2 - Lesson: Laying Out Components Within a Container
    For the JFrame or other top-level container we use the "setSize" method.
    For JTextArea the api recommends we set the rows and columns to provide size information for the parent layout manager. For example - "new JTextArea(6, 18)"
    Some layout managers, such as FlowLayout and GridBagLayout will use the preferredSize for sizing components so you can use the "setPreferredSize" method (in Swing and in j2se 1.5+ AWT).

  • Confused about the role of ejbc in Weblogic 7

    Howdy All
    Here is my understanding of the role of ejbc in Weblogic 7:
    * Let's assume I have a JAR containing an EJB (let's say a stateless session bean).
    Let's call this the no-ejbc-JAR.
    1. I run the no-ejbc-JAR through ejbc to create the container-ejbc-JAR which can
    now be deployed in Weblogic.
    2. I can run ejbc against the no-ejbc-JAR to create a client-ejbc-JAR for use
    by clients wishing to access and use the EJB.
    Questions...
    MUST I run the no-ejbc-JAR through ejbc (to create the container-ejbc-JAR) before
    it can be deployed in Weblogic 7?
    If so, why?
    I can sort of see why this may be necessary from the containers perspective, although
    I would have thought the ejbc process could have been automatically applied by
    Weblogic to no-ejbc-JARs being deployed.
    But I am confused as to why ejbc would need to be used to create a client-ejbc-JAR.
    From the client's perspective, isn't it simply enough to have the no-ejbc-JAR
    (or a subset of the no-ejb-JAR) containing the EJB home and remote interfaces
    (along with any non-ejbc generated support classes)? For use by the client, why
    would it be necessary to run the no-ejbc-JAR through ejbc to create a client-ejbc-JAR?
    Or do I have an incorrect understanding of the role of ejbc?
    Thanks,
    Rob

    Hello Rob,
    I will try to clarify a couple of your concerns. First of all, if your EJB jar
    contains CMP 2.0 entity beans, the underlying JDBC implementations must be generated
    for your respective abstract classes of the entity beans. EJBC will generate this
    for you automatically. Also, the EJBC utility generates all of the other necessary
    server classes that WebLogic requires for deploying your EJBs (such as custom
    code for handling transactions, security, and other EJB services). When your EJB
    utilizes remote home/component interfaces, the utility will also generate all
    of the necessary client-side proxy and server-side byte code by running the RMI
    compiler on your EJBs. In addition to the above code generation that takes place,
    EJBC also checks all of your EJBs and makes sure that they are written according
    to the EJB specification. This way you will always be sure that your EJBs will
    be deployable on BEA WebLogic if EJBC returns with no error messages. You also
    asked if EJBC must be run manually before deploying the EJBs. If you run your
    application in exploded directory format, WebLogic will automatically invoke the
    EJBC utility prior to deploying your EJBs. Please refer to the links below for
    more information about the EJBC utility as well as deploying your application
    in exploded directory format:
    http://edocs.bea.com/wls/docs70/ejb/EJB_utilities.html#1075296
    http://edocs.bea.com/wls/docs70/programming/deploying.html#1125152
    Also, feel free to examine the code that EJBC generates to gain a better feel
    for what's happening behind the scenes. Also, please be aware that ejbc has been
    deprecated in WebLogic 8.1, in favor of the appc utility:
    http://edocs.bea.com/wls/docs81/ejb/EJB_tools.html#1096936
    Best regards,
    Ryan LeCompte
    [email protected]
    http://www.louisiana.edu/~rml7669
    "Rob Young" <[email protected]> wrote:
    >
    Howdy All
    Here is my understanding of the role of ejbc in Weblogic 7:
    * Let's assume I have a JAR containing an EJB (let's say a stateless
    session bean).
    Let's call this the no-ejbc-JAR.
    1. I run the no-ejbc-JAR through ejbc to create the container-ejbc-JAR
    which can
    now be deployed in Weblogic.
    2. I can run ejbc against the no-ejbc-JAR to create a client-ejbc-JAR
    for use
    by clients wishing to access and use the EJB.
    Questions...
    MUST I run the no-ejbc-JAR through ejbc (to create the container-ejbc-JAR)
    before
    it can be deployed in Weblogic 7?
    If so, why?
    I can sort of see why this may be necessary from the containers perspective,
    although
    I would have thought the ejbc process could have been automatically applied
    by
    Weblogic to no-ejbc-JARs being deployed.
    But I am confused as to why ejbc would need to be used to create a client-ejbc-JAR.
    From the client's perspective, isn't it simply enough to have the no-ejbc-JAR
    (or a subset of the no-ejb-JAR) containing the EJB home and remote interfaces
    (along with any non-ejbc generated support classes)? For use by the client,
    why
    would it be necessary to run the no-ejbc-JAR through ejbc to create a
    client-ejbc-JAR?
    Or do I have an incorrect understanding of the role of ejbc?
    Thanks,
    Rob

  • Confused about the "To" box in email ap

    I keep seeing this little gray square that has the letters "To" inside it every time I scroll through my e-mails. What exactly does this mean? I'm rather confused. I also noticed that sometimes when I tap on e-mails, I get a list of two messages for some reason. What is going on?

    Thank you, but what about the multiple e-mails I'm pulling up upon tapping on one e-mail? The mail app seems to thing that I want to see related e-mail; is this what it's doing?

  • Confused about the new Creative Cloud

    Dear all,
    Since I read adout the new Creative Cloud I am confused about what is going to happen to my license for Adobe Lightroom. Are they going to still maintain the desktop applications as well or will I have to pay for a yearly license if I want to use the new versions of Lightroom?
    I am a casual photographer and I love using Lighroom for my pictures but I don't think that paying for a yearly license because I am not spending a lot of time editing pictures.
    Can someone clarify this for me?
    Many thanks,
    Lucian

    DrLucian wrote:
    I am a casual photographer and I love using Lighroom for my pictures but I don't think that paying for a yearly license because I am not spending a lot of time editing pictures.
    The CC is geared towards Pro users, schools etc. LR spans both Pro and casual users. So from what I can garner Lightroom will stay as it is for the next iteration at least. I quoted that bit as my opinion is that that is the very reason why Lightroom will be available outside the cloud with a cloud version available with intergration features with the rest of the CC suite.

  • Confused about the log files

    I have written an application that has a Primary and Secondary database. The application creates tens-of-thousands of records in the Primary database, with a 1-to-1 relationship in the Secondary. On subsequent runs it will either update existing Primary records (which should not update the secondary as that element does not change) or it will create new records.
    The application actually works correctly, with the right data, the right updates and the right logical processing. The problem is the log files.
    The input data I am testing with is originally 2Mb as a CSV file and with a fresh database it creates almost 20Mb of data. This is about right for the way it splits the information up and indexes it. If I run the application again with exactly the same data, it should just update all the entries and create nothing new. My understanding is that the updated records will be written to the end of the logs, and the old ones in the earlier logs would be redundant and the cleaner thread would clean them up. I am explicitly cleaning as per the examples. The issue is that each run, the data just doubles in size! Logically it is fine, physically it is taking a ridiculous amount of space. RUnning DbSpace shows that the logs are mostly full (over 90%) where I would expect most to be empty, or sparsely occupied as the new updates are written to new files. cleanLog() does nothing. I am at a total loss!
    Generally the processing I am doing on the primary is looking up the key, if it is there updating the entry, if not creating one. I have been using a cursor to do this, and using the putCurrent() method for existing updates, and put() for new records. I have even tried using Database.delete() and the full put() in place of putCurrent() - but no difference (except it is slower).
    Please help - it is driving me nuts!

    Let me provide a little more context for the questions I was asking. If this doesn't lead us further into understanding your log situation, perhaps we should take this offline. When log cleaning doesn't occur, the basic questions are:
    a. is the application doing anything that prohibits log cleaning? (in your case, no)
    b. has the utilization level fallen to the point where log cleaning should occur? (not on the second run, but it should on following runs)
    c. does the log utilization level match what the application expects? (no, it doesn't match what you expect).
    1) Ran DbDump with and withour -r. I am expecting the
    data to stay consistent. So, after the first run it
    creates the data, and leaves 20mb in place, 3 log
    files near 100% used. After the second run it should
    update the records (which it does from the
    applications point of view) but I now have 40mb
    across 5 log files all near 100% usage.I think that it's accurate to say that both of us are not surprised that the second run (which updates data but does not change the number of records) creates a second 20MB of log, for a total of 40MB. What we do expect though, is that the utilization reported by DbSpace should fall to closer to 50%. Note that since JE's default minimum utilization level is 50%, we don't expect any automatic log cleaning even after the second run.
    Here's the sort of behavior we'd expect from JE if all the basics are taken care of (there are enough log files, there are no open txns, the application stays up long enough for the daemon to run, or the application does batch cleanLog calls itself, etc).
    run 1 - creates 20MB of log file, near 100% utilization, no log cleaning
    run 2 - updates every record, creates another 20MB of log file, utilization falls, maybe to around 60%. No log cleaning yet, because the utilization is still above the 50% threshold.
    run 3 - updates every record, creates another 20MB of log file, utilization falls below 50%, log cleaning starts running, either in the background by the daemon thread, or because the app calls Environment.cleanLog(), without any need to set je.cleaner.forceCleanFiles.
    So the question here is (c) from above -- you're saying that your DbSpace utilization level doesn't match what you believe your application is doing. There are three possible answers -- your application has a bug :-), or with secondaries and whatnot, JE is representing your data in a fashion you didn't expect, or JE's disk space utilization calculation is inaccurate.
    I suggested using DbDump -r as a first sanity check of what data your application holds. It will dump all the valid records in the environment (though not in key order, no -r is slower, but dumps in key order). Keys and data should up on different lines, so the number of lines in the dump files should be twice the number of records in the environment. You've done this already in your application, but this is an independent way of checking. It also makes it easier to see what portion of data is in primary versus secondary databases, because the data is dumped into per-database files. You could also load the data into a new, blank environment to look at it.
    I think asked you about the size of your records because a customer recently reported a JE disk utilization bug, which we are currently working on. It turns out that if your data records are very different in size (in this case, 4 orders of magnitude) and consistently only the larger or the smaller records are made obsolete, the utilization number gets out of whack. It doesn't really sound like your situation, because you're updating all your records, and they don't sound like they're that different in size. But nevertheless, here's a way of looking at what JE thinks your record sizes are. Run this command:
    java -jar je.jar DbPrintLog -h <envhome> -S
    and you'll see some output that talks about different types of log entries, and their sizes. Look at the lines that say LN and LN_TX at the top. These are data records. Do they match the sizes you expect? These lines do include JE's per-record headers. How large that is depends on whether your data is transactional or not. Non-transactional data records have a header of about 35 bytes, whereas transactional data records have 60 bytes added to them. If your data is small, that can be quite a large percentage. This is quite a lot more than for BDB (Core), partly because BDB (Core) doesn't have record level locking, and partly because we store a number of internal fields as 64 bit rather than 16 or 32 bit values.
    The line that's labelled "key/data" shows what portion JE thinks is the application's data. Note that DbPrintLog, unlike DbSpace, doesn't account for obsoleteness, so while you'll see a more detailed picture of what the records look like in the log, you may see more records than you expect.
    A last step we can take is to send you a development version of DbSpace that has a new feature to recalculate the utilization level. It runs more slowly than the vanilla DbSpace, but is a way of double checking the utilization level.
    In my first response, I suggested trying je.cleaner.forceCleanFiles just to make it clear that the cleaner will run, and to see if the problem is really around the question of what the utilization level should be. Setting that property lets the cleaner bypass the utilization trigger. If using it really reduced the size of your logs, it reinforces that your idea of what your application is doing is correct, and casts suspicion on the utilization calculation.
    So in summary, let's try these steps
    - use DbDump and DbPrintLog to double check the amount and size of your application data
    - make a table of runs, that shows the log size in bytes, number of log files, and the utilization level reported by DbSpace
    - run a je.cleaner.forceCleanFiles cleanLog loop on one of the logs that seems to have a high utilization level, and see how much it reduces to, and what the resulting utilization level is
    If it all points to JE, we'll probably take it offline, and ask for your test case.
    Regards,
    Linda

  • Confused about the date/time processing logic

    Hi Experts,
    i've sent this issue to OSS but they replied this is not a bug and not giving me any info, so I'm here ask for help:
    (i've got 2 screenshots but it seems there's no upload in the sdn forum?)
    we have the equipment warranty master data (check 1.jpg, the Warranties
    assignment block)
    and there're "Warranty Start" and "Warranty End" dates
    we are confused how the data is saved and loaded with the timezones:
    (how are the User Timezone & Server Timezone, or any other value related
    in the following problems)
    1, there're two pairs of columns, the 1st pair only shows date, the 2nd
    pair shows the time also. --What's the diffenence?
    2, when creating a new warranty master data, the 2nd pair shows the
    hour/min/sec(in 1.jpg, "17:00:00"), by what logic, does the hour/min/sec
    value come?
    (in the 2.jpg, we can see different data with different hour stamps,
    how is the value determined?)
    3, how about if we use program to write the data, if we put timestamp
    20120228000000 in the database, what does that mean to the system(which
    timezone means to the system)?
    4, when showing the start/end date data, by what logic (using which
    timezone value) does the system calculated and then bring to the webUI ? (e.g. at Account Identification, after entered Serial Number in Objects, there're Warranty Start/End date, how's the value calculated?)
    Thanks
    Kane Xu

    Hi All,
    Thanks for your deatiled reply, I think the logic is somehow clear for me,
    but now I'm facing a strange problem:
    as the screenshot shows, the 2nd pair of time(with hour/min/sec) is the UTC time
    I found that is stored in table COMM_IL_IOBWTY, the value is exactly the same on UI
    we have a program and a FM, both using "  CALL FUNCTION 'CRM_IBCWTY_IL_API_CREATE' " staement to write this value.
    the program is set as a background job, but for now, at testing period, we run it manually in se38 each time we need
    the FM is called from EN_ONSAVE of an OVView page of webUI
    in the code, both in the program and in the FM, we put 000000 for hr/min/sec,
    they works fine in our dev system, but in qas system,
    the FM works fine, and after running the program, the hour value in table(and in webUI) is not zero,it seems changing by user timezone settings.
    I'm so confused and tried to debug into the 'CRM_IBCWTY_IL_API_CREATE' and not found any code might be related to timezone.
    Do you have any idea why this happens? Thank you!
    Kane

Maybe you are looking for

  • Download a XML file from Web Services Using Flex

    Hi All... I am new for flex, im developing a windows application using Flex/Air, i have connected the web services with user authentication, now I want to download a xml file using web services in flex, how can i do this?? please reply... Thanks in a

  • Pass Parameter to Servlet

    How can i pass parameter from a JSP form (depends on what user chooses from a select box to a Servlet. I need to call multiple query based on what parameter choosen and display the result in table view. Example : 1. User select choice1 from JSP form

  • 2 letters from AT&T with different activation instructions

    After I purchased from AT&T Premier site on June 15, I received an email confirming order received with instructions to activate after I get the phone. Those instructions were to activate on-line with an order and activation numbers on www.wireless.a

  • 2011 i7 15" kernel-panic and  10.6.7-update ,performance so far-fixed.

    i was getting kernel panics with iphone usb tethering in osx and when gaming my fans where whirring so fast my macbook could have almost started lifting offa my desk,however,ive since done the update and done smc reset a few times and reset p,ram too

  • When moving Div in design view : Top & Left as Percentage?

    Hello All, Whenever I move a div in design view, the left and top values are changed to pixels - I would like these to be given as percentages (using the viewport dimensions I have currently selected). Is this possible? If so can anyone tell me how t