CommitAndResume and JDOHelper.isDeleted

Hi!
I am having a problem and don't understand the cause. In the following
code, the first assert succeeds and the second fails. I understand that
the commitAndResume starts a new Transaction and that isDeleted only
returns true if the current Transaction was the one where the object was
deleted. Why is this? Shouldn't the object still be deleted after I have
commited and flushed? Why is it still there?
final PersistenceManagerImpl pm = (PersistenceManagerImpl) getPm();
final Transaction transaction = pm.currentKodoTransaction();
if (!transaction.isActive()) transaction.begin();
pm.deletePersistent(object);
assert JDOHelper.isDeleted(object);
pm.commitAndResume();
pm.flush();
assert JDOHelper.isDeleted(object);
Thanks,
Nic.

Once the transaction in which an object is deleted is committed, JDO
stops managing the object completely. The object is no longer
attached to the PM, so it is just a plain old Java object. All JDOHelper
methods return "false" or "null" for plain old Java objects.

Similar Messages

  • Kodo 4.0.0EA3 JDOHelper.is...() state functions

    I'm trying to write unit tests for some of my higher level classes, and I've run into trouble trying
    to test functions that delete persistent objects. I'm using Spring Framework's
    AbstractTransactionalSpringContextTests class as my harness (which derives from JUnit's TestCase).
    It sets up a transaction before each test function and rolls the transaction back (by default, this
    is editable) after each test function. Because of this, I decided to base the test on the results of
    JDOHelper.isDelete( objectThatWasDeleted ). My tests fail though, and all of the JDOHelper.is...()
    functions return false at all points during the test. I know things are getting deleted though,
    because before the Spring created transaction is started, I create my own transaction and persist
    some objects, and after the Spring transaction is finished (and the test case), I create another
    transaction to remove them (both my transactions are committed). Even in the tear down function,
    JDOHelper.is...() functions don't seem to work; for example, isDeleted() returns false even though
    the object has been scheduled for deletion and is in fact deleted when the transaction commits.
    Is this a known bug? I was under the impression that JDOHelper functions were working as of EA2 (I
    know they weren't working before that and we had to use KodoHelper).
    Thanks,
    Mark
    Here's the code in question:
    * This function is called after the test and the transaction it ran in have been completed.
    * By default, the transaction is rolled back, but this can be overridden. This function
    * should ensure the tests have been cleaned up, including anything that was created by the
    * companion function onSetUpBeforeTransaction().
    * @see onSetUpBeforeTransaction()
    protected void onTearDownAfterTransaction()
    if( transactionManager != null )
    getLogger().info( "Starting transaction for post-test tear down." );
    TransactionStatus status =
    transactionManager.getTransaction( new DefaultTransactionDefinition() );
    if( status != null )
    getLogger().info( "Transaction for post-test tear down has been created." );
    UserManager userManager = (UserManager) applicationContext.getBean( "userManager" );
    User userToAlter = userManager.getUser( USER_TO_ALTER_USERNAME );
    userManager.removeUser( userToAlter );
    getLogger().debug(
    "userToAlter (Kodo) - isDirty = " + KodoJDOHelper.isDirty( userToAlter )
    + ", isNew = " + KodoJDOHelper.isNew( userToAlter )
    + ", isPersistent = " + KodoJDOHelper.isPersistent( userToAlter )
    + ", isDeleted = " + KodoJDOHelper.isDeleted( userToAlter ) );
    getLogger().debug( "userToAlter - isDirty = " + JDOHelper.isDirty( userToAlter )
    + ", isNew = " + JDOHelper.isNew( userToAlter )
    + ", isPersistent = " + JDOHelper.isPersistent( userToAlter )
    + ", isDeleted = " + JDOHelper.isDeleted( userToAlter ) );
    try
    transactionManager.commit( status );
    finally
    status = null;
    else
    getLogger().info( "Could not create transaction for post-test tear down."
    + " Superclass' transactionManager is null." );
    And here's the log output (I've put blank lines around the relevant output):
    2005-11-10 12:50:17,669 INFO [edu.ucsc.whisper.test.integration.UserManagerIntegrationTest] -
    <Rolled back transaction after test execution>
    2005-11-10 12:50:17,669 INFO [edu.ucsc.whisper.test.integration.UserManagerIntegrationTest] -
    <Starting transaction for post-test tear down.>
    2005-11-10 12:50:17,670 DEBUG [org.springframework.orm.jdo.JdoTransactionManager] - <Using
    transaction object [org.springframework.orm.jdo.JdoTransactionManager$JdoTransactionObject@82d44b]>
    2005-11-10 12:50:17,670 DEBUG [org.springframework.orm.jdo.JdoTransactionManager] - <Creating new
    transaction with name [null]>
    2005-11-10 12:50:17,670 DEBUG [org.springframework.orm.jdo.JdoTransactionManager] - <Opened new
    PersistenceManager [kodo.jdo.PersistenceManagerImpl@3faa8d] for JDO transaction>
    2005-11-10 12:50:17,670 DEBUG [org.springframework.orm.jdo.JdoTransactionManager] - <Exposing JDO
    transaction as JDBC transaction
    [org.springframework.orm.jdo.DefaultJdoDialect$DataStoreConnectionHandle@285701]>
    2005-11-10 12:50:17,671 DEBUG
    [org.springframework.transaction.support.TransactionSynchronizationManager] - <Bound value
    [org.springframework.jdbc.datasource.ConnectionHolder@681dea] for key [datasource 9833630] to thread
    [main]>
    2005-11-10 12:50:17,671 DEBUG
    [org.springframework.transaction.support.TransactionSynchronizationManager] - <Bound value
    [org.springframework.orm.jdo.PersistenceManagerHolder@8424bd] for key
    [kodo.jdo.PersistenceManagerFactoryImpl@aa994e] to thread [main]>
    2005-11-10 12:50:17,671 DEBUG
    [org.springframework.transaction.support.TransactionSynchronizationManager] - <Initializing
    transaction synchronization>
    2005-11-10 12:50:17,671 INFO [edu.ucsc.whisper.test.integration.UserManagerIntegrationTest] -
    <Transaction for post-test tear down has been created.>
    2005-11-10 12:50:17,671 DEBUG [org.springframework.beans.factory.support.DefaultListableBeanFactory]
    - <Returning cached instance of singleton bean 'userManager'>
    2005-11-10 12:50:17,671 DEBUG [org.springframework.beans.factory.support.DefaultListableBeanFactory]
    - <Bean with name 'userManager' is a factory bean>
    2005-11-10 12:50:17,671 DEBUG [org.springframework.transaction.interceptor.TransactionInterceptor] -
    <Getting transaction for edu.ucsc.whisper.core.UserManager.getUser>
    2005-11-10 12:50:17,671 DEBUG
    [org.springframework.transaction.support.TransactionSynchronizationManager] - <Retrieved value
    [org.springframework.orm.jdo.PersistenceManagerHolder@8424bd] for key
    [kodo.jdo.PersistenceManagerFactoryImpl@aa994e] bound to thread [main]>
    2005-11-10 12:50:17,671 DEBUG [org.springframework.orm.jdo.JdoTransactionManager] - <Found
    thread-bound PersistenceManager [kodo.jdo.PersistenceManagerImpl@3faa8d] for JDO transaction>
    2005-11-10 12:50:17,671 DEBUG
    [org.springframework.transaction.support.TransactionSynchronizationManager] - <Retrieved value
    [org.springframework.jdbc.datasource.ConnectionHolder@681dea] for key [datasource 9833630] bound to
    thread [main]>
    2005-11-10 12:50:17,671 DEBUG [org.springframework.orm.jdo.JdoTransactionManager] - <Using
    transaction object [org.springframework.orm.jdo.JdoTransactionManager$JdoTransactionObject@87f48e]>
    2005-11-10 12:50:17,671 DEBUG [org.springframework.orm.jdo.JdoTransactionManager] - <Participating
    in existing transaction>
    2005-11-10 12:50:17,671 DEBUG
    [org.springframework.transaction.support.TransactionSynchronizationManager] - <Retrieved value
    [org.springframework.orm.jdo.PersistenceManagerHolder@8424bd] for key
    [kodo.jdo.PersistenceManagerFactoryImpl@aa994e] bound to thread [main]>
    2005-11-10 12:50:17,672 DEBUG [kodo.Query] - <executing query: [SELECT UNIQUE FROM
    edu.ucsc.whisper.core.DefaultUser WHERE username==searchName
                         PARAMETERS java.lang.String searchName] with parameters: {searchName=userToAlter}>
    2005-11-10 12:50:17,674 DEBUG [kodo.jdbc.JDBC] - <<t 977184> connection pool: active=0, idle=1>
    2005-11-10 12:50:17,674 DEBUG [kodo.jdbc.JDBC] - <<t 977184, conn 3700728> checkout>
    2005-11-10 12:50:17,674 DEBUG [kodo.jdbc.JDBC] - <<t 977184> prepared statement cache: size=8,
    max=50, requests=12, hits=4, created=8, redundant=0, overflow=0, leaked=0>
    2005-11-10 12:50:17,677 DEBUG [kodo.jdbc.SQL] - <<t 977184, conn 3700728> [3 ms] executing prepstmnt
    1168959 SELECT t0.userId, t0.VERSN, t0.enabled, t0.password, t1.userInfoId, t1.VERSN, t1.aboutText,
    t1.familyName, t1.firstName, t1.gender, t1.namePrefix, t1.nameSuffix, t1.otherNames, t2.userId,
    t2.VERSN, t2.enabled, t2.password, t2.USERINFO, t2.username, t0.username FROM whisper_user t0 LEFT
    OUTER JOIN userinfo t1 ON t0.USERINFO = t1.userInfoId LEFT OUTER JOIN whisper_user t2 ON
    t1.userInfoId = t2.USERINFO WHERE (t0.username = ?) [params=(String) userToAlter] [reused=1]>
    2005-11-10 12:50:17,690 DEBUG [kodo.jdbc.SQL] - <<t 977184, conn 3700728> [3 ms] executing prepstmnt
    4297359 SELECT t0.previousName, t0.nameOrder FROM userInfo_PreviousNames t0 WHERE t0.userInfoId = ?
    ORDER BY t0.nameOrder ASC [params=(long) 1] [reused=0]>
    2005-11-10 12:50:17,693 DEBUG [kodo.jdbc.SQL] - <<t 977184, conn 3700728> [2 ms] executing prepstmnt
    16585718 SELECT t1.authorityId, t1.VERSN, t1.authority FROM user_authorities t0 INNER JOIN
    authorities t1 ON t0.authorityId = t1.authorityId WHERE t0.userId = ? [params=(long) 1] [reused=0]>
    2005-11-10 12:50:17,697 DEBUG [kodo.jdbc.SQL] - <<t 977184, conn 3700728> [3 ms] executing prepstmnt
    11277980 SELECT t0.organizationId, t0.VERSN, t0.city, t0.country, t0.isPrimary, t0.orgName,
    t0.positionTitle, t0.postalCode, t0.state, t0.streetAddress1, t0.streetAddress2, t0.streetAddress3,
    t0.userId FROM organization t0 WHERE t0.userId = ? [params=(long) 1] [reused=0]>
    2005-11-10 12:50:17,698 DEBUG [kodo.jdbc.JDBC] - <<t 977184, conn 3700728> return>
    2005-11-10 12:50:17,698 DEBUG [kodo.jdbc.JDBC] - <<t 977184, conn 3700728> [0 ms] close>
    2005-11-10 12:50:17,698 DEBUG [org.springframework.transaction.interceptor.TransactionInterceptor] -
    <Invoking commit for transaction on edu.ucsc.whisper.core.UserManager.getUser>
    2005-11-10 12:50:17,698 DEBUG [org.springframework.transaction.interceptor.TransactionInterceptor] -
    <Getting transaction for edu.ucsc.whisper.core.UserManager.removeUser>
    2005-11-10 12:50:17,698 DEBUG
    [org.springframework.transaction.support.TransactionSynchronizationManager] - <Retrieved value
    [org.springframework.orm.jdo.PersistenceManagerHolder@8424bd] for key
    [kodo.jdo.PersistenceManagerFactoryImpl@aa994e] bound to thread [main]>
    2005-11-10 12:50:17,698 DEBUG [org.springframework.orm.jdo.JdoTransactionManager] - <Found
    thread-bound PersistenceManager [kodo.jdo.PersistenceManagerImpl@3faa8d] for JDO transaction>
    2005-11-10 12:50:17,698 DEBUG
    [org.springframework.transaction.support.TransactionSynchronizationManager] - <Retrieved value
    [org.springframework.jdbc.datasource.ConnectionHolder@681dea] for key [datasource 9833630] bound to
    thread [main]>
    2005-11-10 12:50:17,698 DEBUG [org.springframework.orm.jdo.JdoTransactionManager] - <Using
    transaction object [org.springframework.orm.jdo.JdoTransactionManager$JdoTransactionObject@ba0b12]>
    2005-11-10 12:50:17,699 DEBUG [org.springframework.orm.jdo.JdoTransactionManager] - <Participating
    in existing transaction>
    2005-11-10 12:50:17,700 DEBUG
    [org.springframework.transaction.support.TransactionSynchronizationManager] - <Retrieved value
    [org.springframework.orm.jdo.PersistenceManagerHolder@8424bd] for key
    [kodo.jdo.PersistenceManagerFactoryImpl@aa994e] bound to thread [main]>
    2005-11-10 12:50:17,702 DEBUG
    [org.springframework.transaction.support.TransactionSynchronizationManager] - <Retrieved value
    [org.springframework.orm.jdo.PersistenceManagerHolder@8424bd] for key
    [kodo.jdo.PersistenceManagerFactoryImpl@aa994e] bound to thread [main]>
    2005-11-10 12:50:17,702 DEBUG [org.springframework.transaction.interceptor.TransactionInterceptor] -
    <Invoking commit for transaction on edu.ucsc.whisper.core.UserManager.removeUser>
    2005-11-10 12:50:17,702 DEBUG [edu.ucsc.whisper.test.integration.UserManagerIntegrationTest] -
    <userToAlter (Kodo) - isDirty = false, isNew = false, isPersistent = false, isDeleted = false>
    2005-11-10 12:50:17,702 DEBUG [edu.ucsc.whisper.test.integration.UserManagerIntegrationTest] -
    <userToAlter - isDirty = false, isNew = false, isPersistent = false, isDeleted = false>
    2005-11-10 12:50:17,703 DEBUG [org.springframework.orm.jdo.JdoTransactionManager] - <Triggering
    beforeCommit synchronization>
    2005-11-10 12:50:17,703 DEBUG [org.springframework.orm.jdo.JdoTransactionManager] - <Triggering
    beforeCompletion synchronization>
    2005-11-10 12:50:17,703 DEBUG [org.springframework.orm.jdo.JdoTransactionManager] - <Initiating
    transaction commit>
    2005-11-10 12:50:17,703 DEBUG [org.springframework.orm.jdo.JdoTransactionManager] - <Committing JDO
    transaction on PersistenceManager [kodo.jdo.PersistenceManagerImpl@3faa8d]>
    2005-11-10 12:50:17,703 DEBUG [kodo.jdbc.JDBC] - <<t 977184> connection pool: active=0, idle=1>
    2005-11-10 12:50:17,703 DEBUG [kodo.jdbc.JDBC] - <<t 977184, conn 3700728> checkout>
    2005-11-10 12:50:17,703 DEBUG [kodo.jdbc.JDBC] - <<t 977184> prepared statement cache: size=11,
    max=50, requests=16, hits=5, created=11, redundant=0, overflow=0, leaked=0>
    2005-11-10 12:50:17,705 DEBUG [kodo.jdbc.SQL] - <<t 977184, conn 3700728> [1 ms] executing prepstmnt
    1104991 DELETE FROM userInfo_PreviousNames WHERE userInfoId = ? [params=(long) 1] [reused=0]>
    2005-11-10 12:50:17,706 DEBUG [kodo.jdbc.SQL] - <<t 977184, conn 3700728> [1 ms] executing prepstmnt
    15986263 DELETE FROM user_authorities WHERE authorityId = ? [params=(long) 1] [reused=0]>
    2005-11-10 12:50:17,708 DEBUG [kodo.jdbc.SQL] - <<t 977184, conn 3700728> [1 ms] executing prepstmnt
    10794796 DELETE FROM user_authorities WHERE userId = ? [params=(long) 1] [reused=0]>
    2005-11-10 12:50:17,710 DEBUG [kodo.jdbc.SQL] - <<t 977184, conn 3700728> [2 ms] executing prepstmnt
    16100636 DELETE FROM authorities WHERE authorityId = ? AND VERSN = ? [params=(long) 1, (int) 1]
    [reused=0]>
    2005-11-10 12:50:17,711 DEBUG [kodo.jdbc.SQL] - <<t 977184, conn 3700728> [1 ms] executing prepstmnt
    3677634 DELETE FROM userinfo WHERE userInfoId = ? AND VERSN = ? [params=(long) 1, (int) 1] [reused=0]>
    2005-11-10 12:50:17,713 DEBUG [kodo.jdbc.SQL] - <<t 977184, conn 3700728> [1 ms] executing prepstmnt
    2745891 DELETE FROM whisper_user WHERE userId = ? AND VERSN = ? [params=(long) 1, (int) 1] [reused=0]>
    2005-11-10 12:50:17,828 DEBUG [kodo.jdbc.JDBC] - <<t 977184, conn 3700728> [115 ms] commit>
    2005-11-10 12:50:17,829 DEBUG [kodo.jdbc.JDBC] - <<t 977184, conn 3700728> return>
    2005-11-10 12:50:17,829 DEBUG [kodo.jdbc.JDBC] - <<t 977184, conn 3700728> [1 ms] close>
    2005-11-10 12:50:17,830 DEBUG [org.springframework.orm.jdo.JdoTransactionManager] - <Triggering
    afterCompletion synchronization>
    2005-11-10 12:50:17,830 DEBUG
    [org.springframework.transaction.support.TransactionSynchronizationManager] - <Clearing transaction
    synchronization>
    2005-11-10 12:50:17,830 DEBUG
    [org.springframework.transaction.support.TransactionSynchronizationManager] - <Removed value
    [org.springframework.orm.jdo.PersistenceManagerHolder@8424bd] for key
    [kodo.jdo.PersistenceManagerFactoryImpl@aa994e] from thread [main]>
    2005-11-10 12:50:17,830 DEBUG
    [org.springframework.transaction.support.TransactionSynchronizationManager] - <Removed value
    [org.springframework.jdbc.datasource.ConnectionHolder@681dea] for key [datasource 9833630] from
    thread [main]>
    2005-11-10 12:50:17,831 DEBUG [org.springframework.orm.jdo.JdoTransactionManager] - <Closing JDO
    PersistenceManager [kodo.jdo.PersistenceManagerImpl@3faa8d] after transaction>
    2005-11-10 12:50:17,831 DEBUG [org.springframework.orm.jdo.PersistenceManagerFactoryUtils] -
    <Closing JDO PersistenceManager>

    Abe White wrote:
    You need to make sure that when you enhance, you include JDO
    enhancement, not just the base Kodo enhancement. Now that Kodo 4
    supports EJB 3 users who might not want JDO, it doesn't enhance-in
    dependencies on JDO unless you ask it to.
    If you enhance on the command line, that means using the "jdoc" command
    rather than "kodoc" ("jdoc" is actually just a shortcut for "kodoc -jdo
    true"). If you use the PCEnhancerTask, it means setting the jdoEnhance
    attribute:
    <taskdef name="kodoc" classname="kodo.ant.PCEnhancer"/>
    <kodoc jdoEnhance="true">
    </kodoc>So, what are the primary differences between the enhancement done for EJB3
    and JDO? I gather that "base Kodo enhancement" is EJB3.
    Scott

  • JDOHelper cannot be used in place of KodoHelper

    Environment: _
    kodo-jdo-3.0.0RC1 on Windows XP Pro SP1
    Hi all,
    I think we have found a bug regarding Kodo licensing and JDOHelper. I have a test case, based on Kodo's tutorial, which demonstrates this, available on demand.
    As far as we can see, you have no other choice than using KodoHelper class, which will pick-up kodo.properties properly.
    If you use JDOHelper class instead you get a license error - See stack below.
    We feel this is a regression since using JDOHelper was working fine with Kodo 3.0 beta release.
    Could you please confirm there is a bug here ?
    I have modified the JDOFactory class in the tutorial to either use KodoHelper or use JDOHelper, based on a parameter:
    PersistenceManager pm _ JDOFactory.getPersistenceManager (JDOFactory.KODO_HELPER);
    or
    PersistenceManager pm _ JDOFactory.getPersistenceManager (JDOFactory.JDO_HELPER);
    In JDOFactory.java:
    if ( mode __ KODO_HELPER ) {
    /* Solution 1 : use KodoHelper.
    * This is currently the only working solution._
    factory _ KodoHelper.getPersistenceManagerFactory("kodo.properties");
    } else if ( mode __ JDO_HELPER ) {
    /* Solution 2 : use JDOHelper.
    * This is the standard solution. But it does not work._
    Properties properties _ new Properties();
    properties.setProperty(
    "javax.jdo.PersistenceManagerFactoryClass",
    "kodo.versant.ObjectPersistenceManagerFactory");
    properties.setProperty("javax.jdo.option.ConnectionURL", "jdodb");
    properties.setProperty("javax.jdo.option.ConnectionUserName",
    System.getProperty("user.name"));
    factory _ JDOHelper.getPersistenceManagerFactory(properties);
    Using KodoHelper we get the following:
    [c:\myarea\dev\jdo\tutorial kodo]java tutorial.SeedDatabase
    Created 5 new dogs.
    Using JDOHelper we get the following:
    Exception in thread "main" javax.jdo.JDOFatalUserException: Exception thrown by getPersistenceManagerFactory(Properties)
    NestedThrowables:
    java.lang.reflect.InvocationTargetException
    at javax.jdo.JDOHelper.getPersistenceManagerFactory(Unknown Source)
    at javax.jdo.JDOHelper.getPersistenceManagerFactory(Unknown Source)
    at tutorial.JDOFactory.getPersistenceManagerFactory(JDOFactory.java:49)
    at tutorial.JDOFactory.getPersistenceManager(JDOFactory.java:64)
    at tutorial.SeedDatabase.main(SeedDatabase.java:30)
    Caused by: java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    .... 5 more
    Caused by: com.solarmetric.license.LicenseException: No product license key was found. Please ensure that your license key is specified in y
    our kodo.properties file (or in the "General" tab of your IDE's configuration dialog), that the key has not expired, and that it is the corr
    ect key for the version of the product that you are running. If you need to request an evaluation key, please go to http://www.solarmetric.c
    om, or contact [email protected].
    at com.solarmetric.license.License.<init>(License.java:43)
    at kodo.conf.JDOConfigurationImpl.getLicense(JDOConfigurationImpl.java:311)
    at kodo.runtime.PersistenceManagerFactoryImpl.<init>(PersistenceManagerFactoryImpl.java:79)
    at kodo.versant.ObjectPersistenceManagerFactory.<init>(ObjectPersistenceManagerFactory.java:35)
    at kodo.versant.ObjectPersistenceManagerFactory.getPersistenceManagerFactory(ObjectPersistenceManagerFactory.java:47)
    .... 9 more
    Thanks,
    P@trick
    Patrick Guillot Versant France Support Technique
    tel.: 0 810 810 664 http://www.versant.fr [email protected]

    Patrick-
    Excuse the interruption, and if I am stating the obvious, but I don't
    see a "kodo.LicenseKey" property in the Properties object that you create:
    Properties properties = new Properties();
    properties.setProperty(
    "javax.jdo.PersistenceManagerFactoryClass",
    "kodo.versant.ObjectPersistenceManagerFactory");
    properties.setProperty("javax.jdo.option.ConnectionURL", "jdodb");
    properties.setProperty("javax.jdo.option.ConnectionUserName",
    System.getProperty("user.name"));
    factory = JDOHelper.getPersistenceManagerFactory(properties);
    Are you expecting Kodo to pick it up from a kodo.properties file in the
    CLASSPATH? If so, then that isn't the way it works: Kodo will only use
    the kodo.properties file if you maually specify it. You need to include
    the license key in your properties object.
    In article <[email protected]>, Guillot wrote:
    This is exactly what I did! I reproduce the issue not only with Versant,
    but also with JDBC, using MySQL.
    If you allow, I can send you the very simple test case and all information
    you'll ask me to send.
    Thanks,
    Stephen Kim wrote:
    My guess is that Versant's ObjectPersistenceManagerFactory creates a new
    JDOConfiguration with the loadDefaults option set to false. If you can
    replicate this with JDBCPersistenceManagerFactory, we can continue
    discussing this problem here. Otherwise, I would point you to Versant's
    internal Kodo support system.
    Guillot wrote:
    But my classpath does not change between my test using KodoHelper and
    the one using JDOHelper. I use the same command window and run one test
    after the other. So, why does KodoHelper find kodo.properties while
    JDOHelper does not?
    More over, kodo.properties is located in the directory where I have the
    tutorial package. So, if it was a classpath issue, I would get a
    ClassNotFound Exception when using tutorial.SeedDatabase. Which is not the
    case.
    I agree that using FileInputStream to load kodo.properties is a working
    work-around. But the method I use should also work - and it used t work.
    In the past, we have never been setting the license key in a property, in
    the source code. It has always been picked up by kodo in kodo.properties.
    Cheers,
    P@trick
    Stephen Kim wrote:
    This is not a bug as we use JDOHelper for most of our internal tests for
    JDO compliance. My guess is that you do not have kodo.properties at the
    root of your system classpath, and thus when you initialize your
    properties object, there is no license key. Instead of setting
    properties (in which case you should be setting the kodo.LicenseKey
    property), try using a FileInputStream to load kodo.properties.
    support.versant wrote:
    Environment:
    kodo-jdo-3.0.0RC1 on Windows XP Pro SP1
    Hi all,
    I think we have found a bug regarding Kodo licensing and JDOHelper. I
    have a test case, based on Kodo's tutorial, which demonstrates this,
    available on demand.
    As far as we can see, you have no other choice than using KodoHelper
    class, which will pick-up kodo.properties properly.
    If you use JDOHelper class instead you get a license error - See stack
    below.
    We feel this is a regression since using JDOHelper was working fine with
    Kodo 3.0 beta release.
    Could you please confirm there is a bug here ?
    I have modified the JDOFactory class in the tutorial to either use
    KodoHelper or use JDOHelper, based on a parameter:
    PersistenceManager pm = JDOFactory.getPersistenceManager
    (JDOFactory.KODO_HELPER);
    or
    PersistenceManager pm = JDOFactory.getPersistenceManager
    (JDOFactory.JDO_HELPER);
    In JDOFactory.java:
    if ( mode == KODO_HELPER ) {
    /* Solution 1 : use KodoHelper.
    * This is currently the only working solution.
    factory = KodoHelper.getPersistenceManagerFactory("kodo.properties");
    } else if ( mode == JDO_HELPER ) {
    /* Solution 2 : use JDOHelper.
    * This is the standard solution. But it does not work.
    Properties properties = new Properties();
    properties.setProperty(
    "javax.jdo.PersistenceManagerFactoryClass",
    "kodo.versant.ObjectPersistenceManagerFactory");
    properties.setProperty("javax.jdo.option.ConnectionURL", "jdodb");
    properties.setProperty("javax.jdo.option.ConnectionUserName",
    System.getProperty("user.name"));
    factory = JDOHelper.getPersistenceManagerFactory(properties);
    Using KodoHelper we get the following:
    =====================================
    [c:myareadevjdotutorial kodo]java tutorial.SeedDatabase
    Created 5 new dogs.
    Using JDOHelper we get the following:
    =====================================
    Exception in thread "main" javax.jdo.JDOFatalUserException: Exception
    thrown by getPersistenceManagerFactory(Properties)
    NestedThrowables:
    java.lang.reflect.InvocationTargetException
    at javax.jdo.JDOHelper.getPersistenceManagerFactory(Unknown Source)
    at javax.jdo.JDOHelper.getPersistenceManagerFactory(Unknown Source)
    at tutorial.JDOFactory.getPersistenceManagerFactory(JDOFactory.java:49)
    at tutorial.JDOFactory.getPersistenceManager(JDOFactory.java:64)
    at tutorial.SeedDatabase.main(SeedDatabase.java:30)
    Caused by: java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    ... 5 more
    Caused by: com.solarmetric.license.LicenseException: No product license
    key was found. Please ensure that your license key is specified in y
    our kodo.properties file (or in the "General" tab of your IDE's
    configuration dialog), that the key has not expired, and that it is thecorr
    ect key for the version of the product that you are running. If you need
    to request an evaluation key, please go to http://www.solarmetric.c
    om, or contact [email protected].
    at com.solarmetric.license.License.<init>(License.java:43)
    at
    kodo.conf.JDOConfigurationImpl.getLicense(JDOConfigurationImpl.java:311)
    at
    kodo.runtime.PersistenceManagerFactoryImpl.<init>(PersistenceManagerFactoryImpl.java:79)
    at
    kodo.versant.ObjectPersistenceManagerFactory.<init>(ObjectPersistenceManagerFactory.java:35)
    at
    kodo.versant.ObjectPersistenceManagerFactory.getPersistenceManagerFactory(ObjectPersistenceManagerFactory.java:47)
    ... 9 more
    Thanks,
    P@trick
    Patrick Guillot Versant France SupportTechnique
    tel.: 0 810 810 664 http://www.versant.fr
    [email protected] <mailto:[email protected]>
    Steve Kim
    [email protected]
    SolarMetric Inc.
    http://www.solarmetric.com
    Steve Kim
    [email protected]
    SolarMetric Inc.
    http://www.solarmetric.com
    Marc Prud'hommeaux [email protected]
    SolarMetric Inc. http://www.solarmetric.com

  • [SQL QUERY] Select TCP Port Monitors and their related Watcher Node

    Hi everybody,
    I'm working on a SSRS report and SQL Query, I have no problem to find all my TCP Port Monitor (SCOM 2012 R2) based on the DisplayName, but I can't figure out how to get their related watcher nodes (in my case only 1 computer is a watcher node).
    I can't find which table, which field, contains this information..?
    Here is the query i started to write (i select * since i still searching for the right column):
    SELECT
    FROM StateView s
    INNER JOIN BaseManagedEntity me on me.BaseManagedEntityId=s.BaseManagedEntityId
    INNER JOIN MonitorView mv on mv.Id=s.MonitorId
    INNER JOIN ManagedTypeView mtv on mtv.Id=s.TargetManagedEntityType
    --where mv.DisplayName like 'Ping Target Status Check%'
    AND me.IsDeleted = '0'
    where mv.DisplayName like '%tcpmon%'
    and mv.LanguageCode = 'ENU'
    --and s.HealthState in (@state)
    ORDER BY s.Lastmodified DESC
    It would be great if someone can help me !
    Thanks,
    Julien

    Hi,
    After creating a TCP port monitor, we can find a table for this monitor under operationsmanager database :
    SELECT *
    FROM [OperationsManager].[dbo].[MT_TCPPortCheck_******WatcherComputersGroup]
    You will find the warcher computer group.
    Regards,
    Yan Li
    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]

  • Monthly and Yearly backups not working for Protection Group?

    Hi
    We have a Protection Group with 160 members currently attached to it. The group has the following customized Recovery Points:-
    - 1 recovery point every 1 day for the last 2 weeks, 1 recovery point every 1 month for the last 60 months and 1 recovery point every year for the last 5 years.
    The schedule is as follows:-
    - Every Day at 01:00, Every Month on First Day at 01:00 and Every 12 Months on 01 January at 01:00.
    The daily tape backups are working fine without issue but neither the Monthly or Yearly backups are being attempted. We have checked the monthly backups for this issue for the last few months and are unable to see any evidence of the Monthly schedule even
    running? This means that we are having to manually label the Daily tapes once a month as Monthly tapes but they will then stay on the Reports for the next 5 years as DPM will constantly request these tapes back.
    Are you able to help with this matter?
    Not that we really want to do this but if we removed the group completely and re-create it would this cause problems with our restore points?

    Hi,
    This is a known issue that can occur in all current versions of
    DPM including DPM 2012, to correct the condition, you simply need to perform this step. Any time before the next scheduled (monthly or longer) backup, manually update
    the long term backup schedule by hitting the MODIFY button.  The code that runs when modifying the backup schedule redoes the bacup schedules and it fixes the scheduling issue. 
    Below is a DPM Power-shell script that will show you the scheduled backups for all recovery goals for all protection groups.  You can see the last time each recovery goal ran, and the NEXT run time, so you can monitor
    the goals and re-fix them if necessary.
    NOTE: It takes about 20-30 minutes before the fixed next run time schedule will be populated after modify the protection group and updating the schedule.
    # This script will list all currently scheduled backup to tape jobs #
    # It will list scheduled, last run and next run dates #
    # Note: The script takes in consideration that the DPM Database was installed locally on its #
    # Default instance. If SQL is installed on a different location/instance, edit the line #
    # that starts with $instance = '.\msdpm2010 #
    # Author : Wilson Souza #
    # Date Created : 1/13/2012 #
    # Last modified : 1/17/2012 #
    # Version : 1.0 #
    # This version of the script was only tested on DPM 2010 #
    param([string] $verbose)
    add-pssnapin sqlservercmdletsnapin100
    Add-PSSnapin -Name Microsoft.DataProtectionManager.PowerShell
    $ConfirmPreference = 'None'
    cls
    $instance = '.\msdpm2010' # <---- If DPM Database is on a different location, edit this line accordinly
    $query = "use DPMDB
    go
    CREATE FUNCTION label (@GUID varchar(36), @kindred varchar(4), @vault varchar(8))
    returns varchar (1024)
    as
    Begin
    declare @result varchar (1024)
    select @result = vaUltlabel from tbl_mm_vaultlabel where mediapoolid = @GUID and generation =
    case @kindred
    when 'Fath' Then '2'
    when 'Gran' then '1'
    when 'grea' Then '0'
    end and
    vault =
    case @vault
    when 'Offsite1' then '3'
    when 'Offsite2' then '4'
    when 'Offsite3' then '5'
    when 'Offsite4' then '6'
    when 'Offsite5' then '7'
    when 'Offsite6' then '8'
    when 'Offsite7' then '9'
    else
    '1'
    end
    RETURN @result
    END
    go
    use DPMDB
    select ScheduleId as name
    ,def.JobDefinitionId as JD
    ,FriendlyName as PG
    ,SUBSTRING (CONVERT(VARCHAR(10),active_start_date),5,2) + '-' + SUBSTRING (CONVERT(VARCHAR(10),active_start_date),7,2) + '-' + SUBSTRING (CONVERT(VARCHAR(10),active_start_date),1,4) as SD
    ,jobs.date_created as SCD
    ,SUBSTRING (CONVERT(VARCHAR(10),last_run_date),5,2) + '-' + SUBSTRING (CONVERT(VARCHAR(10),last_run_date),7,2) + '-' + SUBSTRING (CONVERT(VARCHAR(10),last_run_date),1,4) + ' ' +
    SUBSTRING (CONVERT(VARCHAR(6),last_run_time),1,2) + ':' + SUBSTRING (CONVERT(VARCHAR(6),last_run_time),3,2) + ':' + SUBSTRING (CONVERT(VARCHAR(6),last_run_time),5,2) as LRD
    ,SUBSTRING (CONVERT(VARCHAR(10),next_run_date),5,2) + '-' + SUBSTRING (CONVERT(VARCHAR(10),next_run_date),7,2) + '-' + SUBSTRING (CONVERT(VARCHAR(10),next_run_date),1,4) + ' ' +
    SUBSTRING (CONVERT(VARCHAR(6),next_run_time),1,2) + ':' + SUBSTRING (CONVERT(VARCHAR(6),next_run_time),3,2) + ':' + SUBSTRING (CONVERT(VARCHAR(6),next_run_time),5,2) as NRD
    ,dbo.label ((substring(xml,(patindex('%MediaPoolId%',Xml))+13,36)), (substring(xml,(patindex('%generation%',Xml))+12,4)), (substring(xml,(patindex('%vault%',Xml))+7,8))) as TL
    ,case
    when substring(xml,(patindex('%vault%',Xml))+7,3) = 'off' then 'Long-Term'
    else 'Short-term'
    end as STLT
    ,case
    when substring(xml,(patindex('%generation%',Xml))+12,4) = 'Fath' then 'Recovery Goal 1'
    when substring(xml,(patindex('%generation%',Xml))+12,4) = 'Gran' then 'Recovery Goal 2'
    when substring(xml,(patindex('%generation%',Xml))+12,4) = 'Grea' then 'Recovery Goal 3'
    end as RG
    from tbl_SCH_ScheduleDefinition sch
    ,msdb.dbo.sysjobs jobs
    ,tbl_JM_JobDefinition def
    ,DPMDB.dbo.tbl_IM_ProtectedGroup prot
    ,msdb.dbo.sysjobschedules jobsch
    ,msdb.dbo.sysjobsteps jobsteps
    ,msdb.dbo.sysschedules syssch
    where CAST(sch.ScheduleId as NCHAR (128)) = jobs.name
    and def.JobDefinitionId = sch.JobDefinitionId
    and def.ProtectedGroupId = prot.ProtectedGroupId
    and jobs.job_id = jobsch.job_id
    and jobs.job_id = jobsteps.job_id
    and jobsch.schedule_id = syssch.schedule_id
    and (def.Type = '913afd2d-ed74-47bd-b7ea-d42055e5c2f1' or def.Type = 'B5A3D25C-8EB2-4032-9428-C852DA5CE2C5')
    and sch.IsDeleted = '0' and def.ProtectedGroupId is not null
    order by FriendlyName, next_run_date, next_run_time
    go
    drop function label
    go"
    $result = Invoke-Sqlcmd -ServerInstance $instance -Query $query
    $count = 1
    write-host " The list below shows all scheduled backup to tape jobs (short term and long term)" -f green
    write-host
    if ($verbose.ToLower() -eq '')
    write-host " For optimun output, set PoweShell Width for screen buffer size to at least 200" -f yellow; write-host
    write-host
    write-host " Protection Group name Creation Date [Schedule Creation Date] [Last Run Date / time] [Next Sched Run Date/time] Goal type Recovery Goal # Custom Tape Label"
    write-host " ------------------------------ ------------- ------------------------ ---------------------- -------------------------- ---------- --------------- -----------------"
    foreach ($result1 in $result)
    if ($color -eq 'white') {$color = 'cyan'} else {$color = 'white'}
    write-host ("{0,2}"-f $count) -foreground green -nonewline
    write-host ( " - {0,-30} {1,-13} {2,-24} {3,-24} {4,-27} {5,-10} {6,15} " -f $result1.PG, $result1.SD, $result1.SCD, $result1.LRD, $result1.NRD, $result1.STLT, $result1.RG) -nonewline -f $color
    write-host $result1.TL -f yellow
    $count++
    else
    write-host " For optimun output, set PoweShell Width for screen buffer size to at least 110" -f yellow; write-host
    write-host " Protection Group Term Goal Tape Label"
    write-host " ------------------------------ ---------- --------------- --------------"
    foreach ($result1 in $result)
    if ($color -eq 'white') {$color = 'cyan'} else {$color = 'white'}
    write-host ("{0,2}"-f $count) -foreground green -nonewline
    write-host ( " - {0,-30} {1,-10} {2,15} " -f $result1.PG, $result1.STLT, $result1.RG) -nonewline -f $color
    write-host $result1.TL -f yellow
    $count++
    Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread. Regards, Mike J. [MSFT] This
    posting is provided "AS IS" with no warranties, and confers no rights.
    I cant seem to get this script to run.. can someone point out what might be missing..
    I've tried creating a shortcut like the following as well:
    Target: C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -noexit -File "C:\Program Files\Microsoft
    DPM\DPM\bin\dpmcliinitscript.ps1" "C:\Data\scripts\scheduledjobs.ps1"
    Start in: "C:\Program Files\Microsoft DPM\DPM\bin\"
    If i run as admin in just takes you to a command line prompt in PS..
    Any thoughts on what is missing here.. i've modified the ps1 to reflect 2012 in my case.. 2012 R2
    DPM
    Tech, the Universe, Everything: http://tech-stew.com
    Ok, the 1.6 script works.. but only if i run it from the ps1 script file.. by right clicking it and doing the Run with Powershell option (non admin).. my shortcut doesnt work.. same issue.. it just goes to a power shell prompt.  The right click and
    run is non admin mode as well.
    When I run it with the right click it shows no jobs scheduled.. If i look in dpm 2012 r2 i see a yearly tape backup scheduled for today.. the script doesnt show me a way to also get the monthly to appear (i've set the monthly for a day later but it doesnt
    appear in the scheduled tasks for next 7 days).. i was under the impression this script would help force the monthly to appear/run.. but even the yearly that does show in DPM scheduled tasks isnt showing up with the script (maybe admin issue?)
    Tech, the Universe, Everything: http://tech-stew.com

  • A device which is not part of this management group has attempted to access this Health Service.

    Has anyone found an answer to this yet?  I have uninstalled/reinstalled the agents both manually and through the push. Rebooted the client, rebooted the  sce server. Forced the group policy to reapply, forced the health agent to /reportnow and I still get the error. The client shows up under the agent managed section but under the health state column it shows not monitored. The clients can ping the SCE server by FQDN and RDP to it as well so name resolution is working fine.
    On the the SCE server I get this in the log
    Event Type: Information
    Event Source: OpsMgr Connector
    Event Category: None
    Event ID: 20000
    Date:  6/25/2009
    Time:  10:09:40 AM
    User:  N/A
    Computer: *******
    Description:
    A device which is not part of this management group has attempted to access this Health Service.
    Requesting Device Name : *****
    And this
    Event Type:            Information
    Event Source:           OpsMgr Connector
    Event Category:       None
    Event ID: 21042
    Date:                        6/25/2009
    Time:                       10:25:14 AM
    User:                        N/A
    Computer:                ***********
    Description:
    Operations Manager has discarded 1 items in management group Servername_MG, which came from $$ROOT$$.  These items have been discarded because no valid route exists at this time.  This can happen when new devices are added to the topology but the complete topology has not been distributed yet.  The discarded items will be regenerated.
    On the client I get
    Event Type: Error
    Event Source: OpsMgr Connector
    Event Category: None
    Event ID: 20070
    Date:  06/25/2009
    Time:  10:06:13 AM
    User:  N/A
    Computer: ******
    Description:
    The OpsMgr Connector connected to ****** but the connection was closed immediately after authentication occured.  The most likely cause of this error is that the agent is not authorized to communicate with the server, or the server has not received configuration.  Check the event log on the server for the presence of 20000 events, indicating that agents which are not approved are attempting to connect.
    And this as well
    Event Type:            Error
    Event Source:           OpsMgr Connector
    Event Category:       None
    Event ID: 21016
    Date:                        06/25/2009
    Time:                       10:06:18 AM
    User:                        N/A
    Computer:                ******
    Description:
    OpsMgr was unable to set up a communications channel to **** and there are no failover hosts.  Communication will resume when ******* is both available and allows communication from this computer.
    And this
    OpsMgr has no configuration for management group Servername_MG and is requesting new configuration from the Configuration Service.

    Hey Nathan,
    Yea I have sent the script to eveyone that has aked for it. I dont know if its helped anybody else as none has given me any feedback either way.
    I guess I can post it here for everyone to use.
    Please keep in mind that if you use this script from MS its at your own risk, If your DB blows up, massive catastrophic failure ensues and so forth ITS YOUR OWN FAULT. MAKE SURE YOU HAVE GOOD BACKUPS
    Step 1) Run this against your SCE 2007 DB
    DECLARE @BaseManagedEntityInternalId int
    DECLARE @BaseManagedEntityId uniqueidentifier
    DECLARE @ViewName sysname
    DECLARE @Statement nvarchar(max)
    SET @BaseManagedEntityInternalId = 0
    WHILE EXISTS (SELECT * FROM BaseManagedEntity WHERE (BaseManagedEntityInternalId >
    @BaseManagedEntityInternalId))
    BEGIN
    SELECT TOP 1
    @BaseManagedEntityInternalId = bme.BaseManagedEntityInternalId
    ,@BaseManagedEntityId = bme.BaseManagedEntityId
    ,@ViewName = met.ManagedTypeViewName
    FROM BaseManagedEntity bme
    JOIN ManagedType met ON (bme.BaseManagedTypeId = met.ManagedTypeId)
    WHERE (bme.BaseManagedEntityInternalId > @BaseManagedEntityInternalId)
    AND (bme.IsDeleted = 0)
    ORDER BY BaseManagedEntityInternalId
    SELECT @Statement = 'IF NOT EXISTS (SELECT * FROM ' + QUOTENAME(@ViewName) + '
    WHERE BaseManagedEntityId = ''' + CAST(@BaseManagedEntityId AS varchar(50)) + ''')
    PRINT ''' + CAST(@BaseManagedEntityId AS varchar(50)) + ' ' + @ViewName + ''''
    EXECUTE(@Statement)
    END
    STEP 2) 
    If your problem was the same a mine you should get some GUID’s returned.  (For example 93790c0B-09C4-3A4D-CE72-F4E3Dd917D78 MTV_DeploymentSettings)
    Using the GUID that we got in the output file
    Execute the below given query:
    ==========================
    select fullname
    from basemanagedentity
    where basemanagedentityid = ‘<GUID>’
    ==========================
    Verify that the device or the object mentioned in the above output is not displayed in Operations console.
    Only in case if the object is not displayed then use the below given query to delete it from database.
    ==========================
    update basemanagedentity
    set isdeleted = 1
    where basemanagedentityid = ‘<GUID>’
    ==========================
    Before executing the above query please ensure that you have the backup of the database. Also note that you need to run the above said query only incase if you do not see the object in the Operations console.
    After executing this query, run this stored procedure:
    ==========================
    exec p_Detectandfixinstancespaceinconsistencies
    ==========================
    Once it is done:
    > Stop all the three OpsMgr services: health, Config and SDK on Management Server
    > Cleared the health service state folder.
    > Start all the three OpsMgr services: SDK, Config, and health on Management Server.
    > Wait for 30 minutes and see if the agents start getting monitored.
    I hope this helps everyone

  • Setting primary key fields from sequence. Please advise

    What is the most logical place to automatically set primary key fields from
    sequence?
    jdoPrestore seems to be a little late - my instance will not have id till
    it's committed. I can not do it in constructor because it gets called every
    time Kodo needs to construct an instance. What other options do I have for
    automatic pk assignment except do it in my code (hate it)?
    I wish I could use store managed OIDs but I need access to OID underlying
    data
    Please also see my previous message "Application Identity Extention"

    I came up with following pattern:
    public class OrgUnit implements InstanceCallbacks {
    private long orgUnitId = -1;
    private transient long tempOrgUnitId = -1;
    public long getOrgUnitId() {
    if (orgUnitId < 0) {
    if (tempOrgUnitId < 0) {
    tempOrgUnitId = JDOFactory.getNextSequenceId(getClass());
    return tempOrgUnitId;
    } else {
    return orgUnitId;
    public void jdoPreStore() {
    if (!JDOHelper.isDeleted(this)) {
    if (orgUnitId < 0) {
    setOrgUnitId(getOrgUnitId());
    I use -1 as an indicator that ID has not been assigned yet. If you use Long
    instead of long it will be cleaner since we can test for null
    "Alex Roytman" <[email protected]> wrote in message
    news:9q27co$r35$[email protected]..
    What is the most logical place to automatically set primary key fieldsfrom
    sequence?
    jdoPrestore seems to be a little late - my instance will not have id till
    it's committed. I can not do it in constructor because it gets calledevery
    time Kodo needs to construct an instance. What other options do I have for
    automatic pk assignment except do it in my code (hate it)?
    I wish I could use store managed OIDs but I need access to OID underlying
    data
    Please also see my previous message "Application Identity Extention"

  • CCA 8.1.2 FP2 Oracle 4.5 Linux Bea 10 MP1 - Unable to Process Hashtable

    Hi,
    I am able to login to TAW successfully. But when I tried to add a new workgroup or add number of users in the licensing tab or anything to do with the update into db, I am getting this error.
    =================================
    [DEPLOYMENT, 03:31:09 11:28:13] TAW: started service HistoryRoutingTransfers
    [DEPLOYMENT, 03:31:09 11:28:13] TAW: started service DataDatabaseConnections
    [DEPLOYMENT, 03:31:09 11:28:13] TAW: started service ProjectsSMSs
    [DEPLOYMENT, 03:31:09 11:28:13] TAW: started service Session
    [DEPLOYMENT, 03:31:09 11:28:13] TAW: started service QualityControls
    [DEPLOYMENT, 03:31:09 11:28:13] TAW: started service DataProjectMenus
    [DEPLOYMENT, 03:31:09 11:28:13] TAW: started service TablesSynchronization
    [DEPLOYMENT, 03:31:09 11:28:13] TAW: started service UserLogins
    [DEPLOYMENT, 03:31:09 11:28:13] TAW: started service ProjectStats
    [DEPLOYMENT, 03:31:09 11:28:13] TAW: started service Campaigns
    [DEPLOYMENT, 03:31:09 11:28:13] TAW: started service DataUsers
    [DEPLOYMENT, 03:31:09 11:28:13] TAW: started service InteractionsPeak
    [DEPLOYMENT, 03:31:09 11:28:13] TAW: started service Workgroups
    [DEPLOYMENT, 03:31:09 11:28:13] TAW: started service ProjectsWebCallbacks
    [DEPLOYMENT, 03:31:09 11:28:13] TAW: started service Projects
    [DEPLOYMENT, 03:31:09 11:28:13] TAW: started service WorkgroupStats
    [DEPLOYMENT, 03:31:09 11:28:13] TAW: started service ClientsHistories
    [DEPLOYMENT, 03:31:09 11:28:13] TAW: started service DataLibraryUrls
    [DEPLOYMENT, 03:31:09 11:28:14] TAW: started service FileTransfers
    [DEPLOYMENT, 03:31:09 11:28:14] TAW: started service Users
    [DEPLOYMENT, 03:31:09 11:28:14] TAW: started service DataLanguages
    [DEPLOYMENT, 03:31:09 11:28:14] TAW: started service ProjectsEmails
    [DEPLOYMENT, 03:31:09 11:28:14] TAW: started service system/console
    [DEPLOYMENT, 03:31:09 11:28:14] TAW: started service UserStats
    [DEPLOYMENT, 03:31:09 11:28:14] TAW: started service HistoryRoutingWorkgroups
    log4j:WARN No appenders could be found for logger (Revision: 11 ).
    log4j:WARN Please initialize the log4j system properly.
    604 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] INFO Revision: 1 - Initializing Logging System.
    31 Mar 2009 11:28:15,313 Revision: 1 Debug.java init Line:64 : - Logging pattern set to : %d{DATE} %-15c %-25.25F %-25.25M Line:%-4L: - %m
    31 Mar 2009 11:28:15,383 Revision: 1 Debug.java init Line:65 : - Max Number of Rolling Logs set to : 5
    31 Mar 2009 11:28:15,384 Revision: 1 Debug.java init Line:66 : - Max Logfile size set to : 5000 KB
    31 Mar 2009 11:28:15,385 Revision: 1 Debug.java init Line:67 : - Log file path set to : /ccamain/bea/user_projects/domains/base_domain/applications/cca/WEB-INF/logs/ccalnxvm-cca.log
    31 Mar 2009 11:28:15,387 Revision: 1 Debug.java init Line:68 : - Priority set to : INFO
    31 Mar 2009 11:28:15,411 Revision: 1 Debug.java init Line:69 : - Finished Initializing Logging System.
    31 Mar 2009 11:28:15,592 Revision: 10 DatabaseService.java query Line:408 : - Query on [CCA_PRIVATE_DATASOURCE] with [SELECT tcpipbusport, urlforccatotawreports, casesensitiveauthentication ,casesensitivesearch FROM SystemConfiguration]
    31 Mar 2009 11:28:15,639 Revision: 10 DatabaseService.java query Line:493 : - SELECT tcpipbusport, urlforccatotawreports, casesensitiveauthentication ,casesensitivesearch FROM SystemConfiguration delay to execute in milliseconds 34
    31 Mar 2009 11:28:15,644 Revision: 10 DatabaseService.java query Line:408 : - Query on [CCA_PRIVATE_DATASOURCE] with [SELECT localelanguageid, language, country, filename, lastmodifieddate FROM LocaleLanguages where usage=1]
    31 Mar 2009 11:28:15,649 Revision: 10 DatabaseService.java query Line:493 : - SELECT localelanguageid, language, country, filename,lastmodifieddate FROM LocaleLanguages where usage=1 delay to execute in milliseconds 2
    31 Mar 2009 11:28:15,685 Revision: 10 DatabaseService.java executeQuery Line:283 : - CCA ExecuteQuery on [CCA_PRIVATE_DATASOURCE] with [SELECT parametername, parametervalue FROM filetransferconfiguration WHERE type = 0]
    31 Mar 2009 11:28:15,730 Revision: 10 DatabaseService.java executeQuery Line:334 : - SELECT parametername, parametervalue FROM filetransferconfiguration WHERE type = 0 delay to execute in milliseconds 40
    31 Mar 2009 11:28:16,004 Revision: 10 DatabaseService.java executeQuery Line:283 : - CCA ExecuteQuery on [CCA_PRIVATE_DATASOURCE] with [SELECT parametername, parametervalue FROM filetransferconfiguration WHERE type = 1]
    31 Mar 2009 11:28:16,009 Revision: 10 DatabaseService.java executeQuery Line:334 : - SELECT parametername, parametervalue FROM filetransferconfiguration WHERE type = 1 delay to execute in milliseconds 1
    31 Mar 2009 11:28:16,031 Revision: 11 CCAComponentManager.java initializeBusConnections Line:166 : - Creating physical bus connections
    31 Mar 2009 11:28:16,036 Revision: 4 MessageSender.java connect Line:55 : - MessageSender attempting to connect to 192.168.1.2
    31 Mar 2009 11:28:16,041 Revision: 3 BusConnection.java connect Line:68 : - Connected to host 192.168.1.2 on port 8888
    31 Mar 2009 11:28:16,200 Revision: 11 CCAComponentManager.java initializeBusConnections Line:177 : - Found host 192.168.1.2
    31 Mar 2009 11:28:16,409 Revision: 5 BusClient.java connect Line:205 : - [CONNECTED] [BusClient 1238524097, IP 192.168.1.2]
    31 Mar 2009 11:28:16,752 Revision: 11 CCAComponentManager.java initializeBusConnections Line:177 : - Found host 192.168.1.2
    31 Mar 2009 11:28:16,754 Revision: 2 BusHandler.java startBusClient Line:69 : - Host 192.168.1.2 already exists
    31 Mar 2009 11:28:16,796 Revision: 11 CCAComponentManager.java initializeMessageCenter Line:192 : - Maximum number of sessions set to 500
    31 Mar 2009 11:28:16,800 Revision: 11 CCAComponentManager.java initializeMessageCenter Line:197 : - Maximum session size set to 1000 KB
    31 Mar 2009 11:28:16,882 Revision: 9 BusClient_IM.java socketConnect Line:153 : - [SOCKET_CONNECT, IMServer 9, Company 1] [BusClient 1238524097, IP 192.168.1.2]
    31 Mar 2009 11:28:16,886 Revision: 2 BusHandler.java addIMServer Line:96 : - Adding IMServer for Company 1
    31 Mar 2009 11:28:17,040 Revision: 9 BusClient_IM.java socketConnect Line:167 : - Total # of IMServers for Company 1 = 1
    31 Mar 2009 11:28:17,664 [192.168.1.2] DEBUG Revision: 21 .handleMessage(BusClient_IM.java:142) - ************** [KEEP_ALIVE 192.168.1.2 ] **************
    31 Mar 2009 11:28:18,208 Revision: 10 DatabaseService.java executeQuery Line:283 : - CCA ExecuteQuery on [CCA_PRIVATE_DATASOURCE] with [SELECT name, tableid, positionid, datatype from dynamicupdatesfields ORDER BY tableId]
    31 Mar 2009 11:28:18,496 Revision: 10 DatabaseService.java executeQuery Line:334 : - SELECT name, tableid, positionid, datatype from dynamicupdatesfields ORDER BY tableId delay to execute in milliseconds 285
    <Mar 31, 2009 11:28:18 AM PDT> <Notice> <Log Management> <BEA-170027> <The server initialized the domain log broadcaster successfully. Log messages will now bebroadcasted to the domain log.>
    <Mar 31, 2009 11:28:19 AM PDT> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to ADMIN>
    <Mar 31, 2009 11:28:19 AM PDT> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to RESUMING>
    <Mar 31, 2009 11:28:20 AM PDT> <Notice> <Server> <BEA-002613> <Channel "Default" is now listening on 192.168.1.2:80 for protocols iiop, t3, ldap, snmp, http.>
    <Mar 31, 2009 11:28:20 AM PDT> <Notice> <Server> <BEA-002613> <Channel "Default[1]" is now listening on 127.0.0.1:80 for protocols iiop, t3, ldap, snmp, http.>
    <Mar 31, 2009 11:28:20 AM PDT> <Notice> <WebLogicServer> <BEA-000329> <Started WebLogic Admin Server "AdminServer" for domain "base_domain1" running in Production Mode>
    <Mar 31, 2009 11:28:20 AM PDT> <Warning> <Server> <BEA-002611> <Hostname "OEL4", maps to multiple IP addresses: 192.168.1.2, 127.0.0.1>
    <Mar 31, 2009 11:28:20 AM PDT> <Warning> <Server> <BEA-002611> <Hostname "ccalnxvm", maps to multiple IP addresses: 192.168.1.2, 127.0.0.1>
    <Mar 31, 2009 11:28:21 AM PDT> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to RUNNING>
    <Mar 31, 2009 11:28:21 AM PDT> <Notice> <WebLogicServer> <BEA-000360> <Server started in RUNNING mode>
    31 Mar 2009 11:28:25,810 [192.168.1.2] DEBUG Revision: 21 .handleMessage(BusClient_IM.java:142) - ************** [KEEP_ALIVE 192.168.1.2 ] **************
    31 Mar 2009 11:28:33,658 [192.168.1.2] DEBUG Revision: 21 .handleMessage(BusClient_IM.java:142) - ************** [KEEP_ALIVE 192.168.1.2 ] **************
    31 Mar 2009 11:28:41,679 [192.168.1.2] DEBUG Revision: 21 .handleMessage(BusClient_IM.java:142) - ************** [KEEP_ALIVE 192.168.1.2 ] **************
    31 Mar 2009 11:28:49,813 [192.168.1.2] DEBUG Revision: 21 .handleMessage(BusClient_IM.java:142) - ************** [KEEP_ALIVE 192.168.1.2 ] **************
    31 Mar 2009 11:28:57,787 [192.168.1.2] DEBUG Revision: 21 .handleMessage(BusClient_IM.java:142) - ************** [KEEP_ALIVE 192.168.1.2 ] **************
    31 Mar 2009 11:29:05,807 [192.168.1.2] DEBUG Revision: 21 .handleMessage(BusClient_IM.java:142) - ************** [KEEP_ALIVE 192.168.1.2 ] **************
    31 Mar 2009 11:29:13,828 [192.168.1.2] DEBUG Revision: 21 .handleMessage(BusClient_IM.java:142) - ************** [KEEP_ALIVE 192.168.1.2 ] **************
    31 Mar 2009 11:29:21,845 [192.168.1.2] DEBUG Revision: 21 .handleMessage(BusClient_IM.java:142) - ************** [KEEP_ALIVE 192.168.1.2 ] **************
    <Mar 31, 2009 11:29:22 AM PDT> <Notice> <Security> <BEA-090078> <User in security realm myrealm has had 5 invalid login attempts, locking account for 5 minutes.>
    31 Mar 2009 11:29:29,871 [192.168.1.2] DEBUG Revision: 21 .handleMessage(BusClient_IM.java:142) - ************** [KEEP_ALIVE 192.168.1.2 ] **************
    31 Mar 2009 11:29:37,065 [192.168.1.2] DEBUG Revision: 21 .handleMessage(BusClient_IM.java:142) - ************** [KEEP_ALIVE 192.168.1.2 ] **************
    31 Mar 2009 11:29:45,108 [192.168.1.2] DEBUG Revision: 21 .handleMessage(BusClient_IM.java:142) - ************** [KEEP_ALIVE 192.168.1.2 ] **************
    31 Mar 2009 11:29:48,723 [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .executeQuery(DatabaseService.java:281) - ExecuteQuery on [TAW_PRIVATE_DATASOURCE] with [Select systempackageid, resourcebundlekey, packageconfigurable, sequence, defaultSelection from systempackage where packageconfigurable=1 AND  isdeleted=0]
    31 Mar 2009 11:29:48,742 [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .getDBConnection(DatabaseService.java:492) - got connection successfully
    31 Mar 2009 11:29:48,792 [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .executeQuery(DatabaseService.java:281) - ExecuteQuery on [TAW_PRIVATE_DATASOURCE] with [SELECT name, tableid, positionid, datatype from dynamicupdatesfields ORDER BY tableId]
    31 Mar 2009 11:29:48,799 [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .getDBConnection(DatabaseService.java:492) - got connection successfully
    31 Mar 2009 11:29:49,018 [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .executeQuery(DatabaseService.java:281) - ExecuteQuery on [TAW_PRIVATE_DATASOURCE] with [SELECT resourceid, tableid, broadcast from dynamicupdatesresources ORDER BY tableId]
    31 Mar 2009 11:29:49,022 [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .getDBConnection(DatabaseService.java:492) - got connection successfully
    31 Mar 2009 11:29:49,052 [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .executeQuery(DatabaseService.java:281) - ExecuteQuery on [TAW_PRIVATE_DATASOURCE] with [select languagelibraryidas libraryid from companies where companyId = -1]
    31 Mar 2009 11:29:49,054 [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .getDBConnection(DatabaseService.java:492) - got connection successfully
    31 Mar 2009 11:29:49,061 [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .executeQuery(DatabaseService.java:281) - ExecuteQuery on [TAW_PRIVATE_DATASOURCE] with [select name, descriptionfrom regionalizationlibrary where  regionalizationlibraryid=1 AND isdeleted=0]
    31 Mar 2009 11:29:49,064 [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .getDBConnection(DatabaseService.java:492) - got connection successfully
    31 Mar 2009 11:29:49,072 [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .executeQuery(DatabaseService.java:281) - ExecuteQuery on [TAW_PRIVATE_DATASOURCE] with [select lk.value as displayname, ltl.elementid, sequence, regionalizationlibraryid from regionalizationlibraryelements ltl, localelanguages ll, localekeys lk where ltl.regionalizationlibraryid=1 AND ll.usage=1 AND lk.localelanguageid=ll.localelanguageid AND lk.localevariantid=1 AND ll.localelanguageid = ltl.elementid and (ll.language || '_' ||ll.country) = lk.keyid AND ltl.isdeleted=0]
    31 Mar 2009 11:29:49,116 [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .getDBConnection(DatabaseService.java:492) - got connection successfully
    31 Mar 2009 11:29:49,126 [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .executeQuery(DatabaseService.java:281) - ExecuteQuery on [TAW_PRIVATE_DATASOURCE] with [select lk.value as displayname, ll.localelanguageid as elementid from  localelanguages ll, localekeys lkwhere ll.usage=1 AND lk.localelanguageid=-99 AND lk.localevariantid=1 AND  (ll.language || '_' || ll.country) = lk.keyid  AND (ll.localelanguageid not in(  select ltli.elementid from regionalizationlibraryelements ltli where  ltli.isdeleted = 0 and ltli.regionalizationlibraryid=1)) ]
    31 Mar 2009 11:29:49,130 [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .getDBConnection(DatabaseService.java:492) - got connection successfully
    31 Mar 2009 11:29:49,133 [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG RegionalizationLibrary.populateBean(RegionalizationLibrary.java:208) - command[]_state[2]_languageId[2]_sequence[2]_displayName[English (GB)]_state[2]_languageId[4]_sequence[4]_displayName[Français (France)]_state[2]_languageId[11]_sequence[3]_displayName[Français (CA)]_state[2]_languageId[1]_sequence[0]_displayName[English (US)]_state[2]_languageId[7]_sequence[5]_displayName[Español (México)]_state[2]_languageId[12]_sequence[1]_displayName[English (AU)]
    31 Mar 2009 11:29:49,169 [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG RegionalizationLibrary.getLanguagesFormatter(RegionalizationLibrary.java:492) - ****Creating new LanguagesFormatter
    31 Mar 2009 11:29:53,126 [192.168.1.2] DEBUG Revision: 21 .handleMessage(BusClient_IM.java:142) - ************** [KEEP_ALIVE 192.168.1.2 ] **************
    31 Mar 2009 11:29:54,422 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 38 .doPost(ProxyLoginHandler.java:118) - Received action [1002]
    31 Mar 2009 11:29:54,496 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .executeQueryPrepared(DatabaseService.java:324) - ExecuteQuery on [TAW_PRIVATE_DATASOURCE] with [SELECT companyid, name,  alias, timezone, dateformatid, remotecontacts, remoteclienthistory, remotequalitycontrol, externalapp, runapp, textlabel, htmlfile, enablecustomtab, countryid, enableexternalapp, enablepredictive, enablepreview, donotrecordstatus, applicationtype, runhtmlapp, enabledialout, securitypolicyid, displayname, templateid FROM companies  WHERE (alias = ?) AND (isdeleted = 0)]
    31 Mar 2009 11:29:54,497 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .getDBConnection(DatabaseService.java:492) - got connection successfully
    31 Mar 2009 11:29:54,617 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .executeQuery(DatabaseService.java:281) - ExecuteQuery on [TAW_PRIVATE_DATASOURCE] with [Select templateid from companies where companyid=1]
    31 Mar 2009 11:29:54,620 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .getDBConnection(DatabaseService.java:492) - got connection successfully
    31 Mar 2009 11:29:54,678 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .executeQuery(DatabaseService.java:281) - ExecuteQuery on [TAW_PRIVATE_DATASOURCE] with [SELECT optionid, optionvalue  FROM companytemplateinstances where templateid=101 AND isdeleted=0]
    31 Mar 2009 11:29:54,681 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .getDBConnection(DatabaseService.java:492) - got connection successfully
    31 Mar 2009 11:29:54,689 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] INFO Revision: 38 .authenticate(ProxyLoginHandler.java:191) - Login type [1002] Alias [system] Username [netadmin] Password [**********] Language Id [1]
    31 Mar 2009 11:29:54,693 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .executeQuery(DatabaseService.java:281) - ExecuteQuery on [TAW_PRIVATE_DATASOURCE] with [select languagelibraryidas libraryid from companies where companyId = 1]
    31 Mar 2009 11:29:54,695 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .getDBConnection(DatabaseService.java:492) - got connection successfully
    31 Mar 2009 11:29:54,699 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .executeQuery(DatabaseService.java:281) - ExecuteQuery on [TAW_PRIVATE_DATASOURCE] with [select name, descriptionfrom regionalizationlibrary where  regionalizationlibraryid=1 AND isdeleted=0]
    31 Mar 2009 11:29:54,701 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .getDBConnection(DatabaseService.java:492) - got connection successfully
    31 Mar 2009 11:29:54,704 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .executeQuery(DatabaseService.java:281) - ExecuteQuery on [TAW_PRIVATE_DATASOURCE] with [select lk.value as displayname, ltl.elementid, sequence, regionalizationlibraryid from regionalizationlibraryelements ltl, localelanguages ll, localekeys lk where ltl.regionalizationlibraryid=1 AND ll.usage=1 AND lk.localelanguageid=1 AND lk.localevariantid=1 AND ll.localelanguageid = ltl.elementid and (ll.language || '_' || ll.country) = lk.keyid AND ltl.isdeleted=0]
    31 Mar 2009 11:29:54,707 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .getDBConnection(DatabaseService.java:492) - got connection successfully
    31 Mar 2009 11:29:54,711 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .executeQuery(DatabaseService.java:281) - ExecuteQuery on [TAW_PRIVATE_DATASOURCE] with [select lk.value as displayname, ll.localelanguageid as elementid from  localelanguages ll, localekeys lkwhere ll.usage=1 AND lk.localelanguageid=1 AND lk.localevariantid=1 AND  (ll.language || '_' || ll.country) = lk.keyid  AND (ll.localelanguageid not in(  select ltli.elementid from regionalizationlibraryelements ltli where  ltli.isdeleted = 0 and ltli.regionalizationlibraryid=1)) ]
    31 Mar 2009 11:29:54,714 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .getDBConnection(DatabaseService.java:492) - got connection successfully
    31 Mar 2009 11:29:54,775 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG RegionalizationLibrary.populateBean(RegionalizationLibrary.java:208) - command[]_state[2]_languageId[2]_sequence[2]_displayName[English (GB)]_state[2]_languageId[4]_sequence[4]_displayName[French (FR)]_state[2]_languageId[11]_sequence[3]_displayName[French (CA)]_state[2]_languageId[1]_sequence[0]_displayName[English (US)]_state[2]_languageId[7]_sequence[5]_displayName[Spanish (MX)]_state[2]_languageId[12]_sequence[1]_displayName[English (AU)]
    31 Mar 2009 11:29:54,777 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG RegionalizationLibrary.getLanguagesFormatter(RegionalizationLibrary.java:492) - ****Creating new LanguagesFormatter
    31 Mar 2009 11:29:54,780 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 38 .getDefinedLanguageId(ProxyLoginHandler.java:942) - Regionalization returning case 1 in list [1]
    31 Mar 2009 11:29:54,868 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .executeQuery(DatabaseService.java:281) - ExecuteQuery on [TAW_PRIVATE_DATASOURCE] with [SELECT jrelibraryid, name, description, version, classid, cabdownloadurl, type, defaultjre, sequence, isdeleted FROM jreslibrary WHERE isdeleted=0 ORDER BY sequence ASC]
    31 Mar 2009 11:29:54,871 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .getDBConnection(DatabaseService.java:492) - got connection successfully
    31 Mar 2009 11:29:54:902 DEBUG [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] UserConfiguration [Revision: 18] - Load User Configuration
    31 Mar 2009 11:29:54,902 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG UserConfiguration [Revision: 18].load(UserConfiguration.java:101) - Load User Configuration
    31 Mar 2009 11:29:55,052 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .executeQueryPrepared(DatabaseService.java:324) - ExecuteQuery on [TAW_PRIVATE_DATASOURCE] with [SELECT u.userid,u.username, u.commtype, u.wrapuptime, u.userdeparturereasonid, u.popoutcome, u.enablerecording, u.popupscreen, u.playsound, u.firstname, u.lastname, u.password, u.permission, u.numberoflogin, u.lastlogin, u.extension, u.comm, u.soundfile, u.departuredate, u.emailclient, u.emailaddress, u.timezone, u.dateformatid, u.definedtimezone, u.defineddateformat, u.enablelongdistance, u.departmentid, u.commctyid, u.usercountrycodeid, u.usernameUploadedDate, u.usernamePromptLocation, u.greetingUploadedDate, u.greetingPromptLocation, u.maxchats, u.maxemails, u.offhook, u.autocallaccept, u.announcement, u.logintimeout, u.defaultbillingprojectid,u.enabledialout, u.playwelcomeprompt, u.welcomepromptlocation, u.welcomeuploadeddate, u.voicemailretrieval, u.icontype, u.supervisorpermission, u.disablecalltrace, u.disablevnc FROM users u, companies c WHERE u.isdeleted=0 AND u.permission<>64 AND c.isdeleted=0 AND u.userdeparturereasonid=-1 AND u.companyid = 1 AND c.companyid = 1 AND u.username = ? ]
    31 Mar 2009 11:29:55,056 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .getDBConnection(DatabaseService.java:492) - got connection successfully
    31 Mar 2009 11:29:55,136 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .executeQuery(DatabaseService.java:281) - ExecuteQuery on [TAW_PRIVATE_DATASOURCE] with [SELECT companyid, userid, type, closeconnection, disableusercache, debuglevel, enabletelnet, timetologin, enablelogfile, logfilepath, pingdelay, disablewrapuptimer, disableelapsedtimer, disablephonestatetimer, allowmultiacdinter, allowoutboundcalls, urltimeout, hotkeyenabled, jrelibraryid FROM agentconsoleconfiguration WHERE companyid=1 AND userid=1 AND isdeleted=0]
    31 Mar 2009 11:29:55,228 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .getDBConnection(DatabaseService.java:492) - got connection successfully
    31 Mar 2009 11:29:55,232 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .executeQuery(DatabaseService.java:281) - ExecuteQuery on [TAW_PRIVATE_DATASOURCE] with [SELECT jrelibraryid, name, description, version, classid, cabdownloadurl, type, defaultjre, sequence, isdeleted FROM jreslibrary WHERE isdeleted=0 ORDER BY sequence ASC]
    31 Mar 2009 11:29:55,235 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .getDBConnection(DatabaseService.java:492) - got connection successfully
    31 Mar 2009 11:29:55:238 INFO [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] UserAuthentication [Revision: 22] -
    loading user
    31 Mar 2009 11:29:55,238 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] INFO UserAuthentication [Revision: 22].load(UserAuthentication.java:399) -
    loading user
    31 Mar 2009 11:29:55,241 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .executeQueryPrepared(DatabaseService.java:324) - ExecuteQuery on [TAW_PRIVATE_DATASOURCE] with [SELECT u.userid,u.permission, u.password, u.numberoflogin, u.lastlogin, u.accountactive FROM users u WHERE u.isdeleted=0 AND u.permission<>64 AND u.companyid = 1 AND u.username = ? ]
    31 Mar 2009 11:29:55,244 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .getDBConnection(DatabaseService.java:492) - got connection successfully
    31 Mar 2009 11:29:55,290 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .executeUpdate(DatabaseService.java:189) - Execute update on [TAW_PRIVATE_DATASOURCE] with [UPDATE users SET numberoflogin=numberoflogin+1  WHERE userid=1 AND isdeleted=0 AND companyid=1]
    31 Mar 2009 11:29:55,293 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .getDBConnection(DatabaseService.java:492) - got connection successfully
    31 Mar 2009 11:29:55,453 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .executeQuery(DatabaseService.java:281) - ExecuteQuery on [TAW_PRIVATE_DATASOURCE] with [SELECT hasalphabeticchar, hasnumericchar, hasspecialchar, hasupperchar, haslowerchar, passwordlength, maxloginattempt, lockingaccountpolicy, lockingaccountduration, disableinactiveaccount, maxinactivedays FROM tawpasswordpolicy WHERE companyid=1 AND isdeleted=0]
    31 Mar 2009 11:29:55,455 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .getDBConnection(DatabaseService.java:492) - got connection successfully
    31 Mar 2009 11:29:55,461 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .executeQueryPrepared(DatabaseService.java:324) - ExecuteQuery on [TAW_PRIVATE_DATASOURCE] with [SELECT u.userid,u.permission, u.password, u.numberoflogin, u.lastlogin FROM users u WHERE u.isdeleted=0 AND u.permission<>64 AND u.companyid = 1 AND u.username = ? ]
    31 Mar 2009 11:29:55,463 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .getDBConnection(DatabaseService.java:492) - got connection successfully
    31 Mar 2009 11:29:55,636 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .executeQuery(DatabaseService.java:281) - ExecuteQuery on [TAW_PRIVATE_DATASOURCE] with [SELECT hasalphabeticchar, hasnumericchar, hasspecialchar, hasupperchar, haslowerchar, passwordlength, maxloginattempt, lockingaccountpolicy, lockingaccountduration, disableinactiveaccount, maxinactivedays FROM tawpasswordpolicy WHERE companyid=1 AND isdeleted=0]
    31 Mar 2009 11:29:55,643 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG Revision: 13 .getDBConnection(DatabaseService.java:492) - got connection successfully
    31 Mar 2009 11:29:55:646 DEBUG [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] UserAuthentication [Revision: 22] -
    Security policy never locked
    31 Mar 2009 11:29:55,646 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG UserAuthentication [Revision: 22].accountLocked(UserAuthentication.java:214) -
    Security policy never locked
    31 Mar 2009 11:29:55:648 DEBUG [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] UserAuthentication [Revision: 22] - User Authentication validation username=netadmin result = 1
    31 Mar 2009 11:29:55,648 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG UserAuthentication [Revision: 22].validate(UserAuthentication.java:172) - User Authentication validation username=netadmin result = 1
    31 Mar 2009 11:29:55,651 [[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] DEBUG

    hello im having problem installing CCA812 on RHEL 4.5 and Oracle 10gR2, however i successfully installed the RHEL 4, database and oracle client.
    now would like to install tcpipbus but got this error " bash: tcpipbus: command not found". I know that this is related in enviroment path.
    any idea?

  • Modeling Persistence

    Hi,
    I have a question regarding use of Domain Model pattern. In our project we are creating customer profiles. We have modeled profile like this
    class Profile {
    Name name;
    List<Address> addressList;
    List <Phone> phoneList;
    We have CRUD operations for Profile, Addresses, and Phones.
    For crud operations, we have DAO facade like this
    class ProfileDao {
    void insertProfile(Profile profile);
    void Profile getProfile(String profileId);
    void addAddress(String profileId, Address a);     
    void addPhone(String profileId, Phone p);     
    void updateAddress(String addressId, Address a);
    void updatePhone(String phoneId, Phone p);
    void deleteAddress(String addressId);
    void deletePhone(String phoneId);          
    Client for this code will be like this.
    class ProfileClient {
    void testAddAddress() {
         Address address = new Address("112 Fifth Street", "NJ", "US", "08857");
         String profileId = getProfileIdentifier();
         getProfileDao().update(profileId, address);
    Instead of using Facade like this, I thought we could use it like following.
    1. Clients will do all CRUD operations on Profile object itself.
    2. All the classes will have isUpdated, isNew and isDeleted flag.
    3. Dao will have just one update(Profile p) method.
    4. Dao will check for updates and make queries accordingly
    Dao will now become like this.
    class ProfileDao {
    void insertProfile(Profile profile);
    void Profile getProfile(String profileId);
    void update(Profile p);
    Client for this code will be like this.
    class ProfileClient {
    void testAddAddress() {
         Address address = new Address("112 Fifth Street", "NJ", "US", "08857");
         Profile p = getProfile();
         p.addAddress(address);
         getProfileDao().update(profile);
    This second approach looks cleaner, but the concern raised by my team mates is that every time I need to add, update, delete a single address, I need to load whole profile object in memory. This looks more like a "stateful" implementation as opposed to "stateless" implementation of Dao Facade. If Profile object is a huge one, then it can be a overkill to load the whole object just to add/change one address. But I certainly dont like the facade implementation. It does not allow me to do inserts/updates/deletes in batch. I have to do operations one at a time. Secondly any object level validations or business rules (Like Profile should have only one delivery address) are harder to implement in facade approach. What is your opinion on this? Is this a standard Domain Model vs Transaction Script issue?

    Hi,
    I have a question regarding use of Domain Model
    pattern. In our project we are creating customer
    profiles. We have modeled profile like this
    class Profile {
    Name name;
    List<Address> addressList;
    List <Phone> phoneList;
    We have CRUD operations for Profile, Addresses, and
    Phones.
    For crud operations, we have DAO facade like this
    class ProfileDao {
    void insertProfile(Profile profile);
    void Profile getProfile(String profileId);
    void addAddress(String profileId, Address a);     
    void addPhone(String profileId, Phone p);     
    void updateAddress(String addressId, Address a);
    void updatePhone(String phoneId, Phone p);
    void deleteAddress(String addressId);
    void deletePhone(String phoneId);          
    Client for this code will be like this.
    class ProfileClient {
    void testAddAddress() {
    Address address = new Address("112 Fifth Street",
    , "NJ", "US", "08857");
         String profileId = getProfileIdentifier();
         getProfileDao().update(profileId, address);
    Instead of using Facade like this, I thought we
    e could use it like following.
    1. Clients will do all CRUD operations on Profile
    e object itself.
    2. All the classes will have isUpdated, isNew and
    d isDeleted flag.
    3. Dao will have just one update(Profile p)
    ) method.
    4. Dao will check for updates and make queries
    s accordingly
    Dao will now become like this.
    class ProfileDao {
    void insertProfile(Profile profile);
    void Profile getProfile(String profileId);
    void update(Profile p);
    Client for this code will be like this.
    class ProfileClient {
    void testAddAddress() {
    Address address = new Address("112 Fifth Street",
    , "NJ", "US", "08857");
         Profile p = getProfile();
         p.addAddress(address);
         getProfileDao().update(profile);
    This second approach looks cleaner, but the concern
    raised by my team mates is that every time I need to
    add, update, delete a single address, I need to load
    whole profile object in memory. This looks more like
    a "stateful" implementation as opposed to "stateless"
    implementation of Dao Facade. Stateful would only occur if the profile remained in session between requests. You can have a memory-intensive, stateless object (which I think is what you are concerned about).
    If Profile object is a
    huge one, then it can be a overkill to load the whole
    object just to add/change one address. But I
    certainly dont like the facade implementation. It
    does not allow me to do inserts/updates/deletes in
    batch. I have to do operations one at a time.I do not see how either of the designs above has a method siguature for batch operations. That having been said, this is no issue. Have an overloaded version of each method that also takes a Connection (or custom transaction) object. You can then execute each step "one at a time" but within a given transaction that can be committed as a logical unit of work.
    If you are indeed concerned about memory requirements, consider implementing Lazy Load. Or have Hibernate do it for you.
    Secondly any object level validations or business
    rules (Like Profile should have only one delivery
    address) are harder to implement in facade approach.
    What is your opinion on this? Is this a standard
    Domain Model vs Transaction Script issue?Your DAO's seem to be your main issue and not the domain model. Transaction Script assumes there is a strong relationship between the relational and object models. O/R mapping technologies will tend to push you in this direction . Custom DAO's (via JDBC) can work in either instance. However, you should focus more on your model domain first, and then worry about its persistence afterwards (ideally). Your business logic will be implemented. How that object is persisted, while important from a performance consideration, should not overly affect your model domain.
    - Saish

  • How can i improve on this join clause

    I have a table like this
    desc work_table2
    WORK_TABLE2_ID NOT NULL NUMBER
    APPLICATION_ID NUMBER
    APPLICATION_VERSION NUMBER
    JOB_ID NUMBER
    CUSTOMER_ID NUMBER
    ATTRIBUTE_ID NUMBER
    TEMPLATE_ID NUMBER
    DISTRICT_ID NUMBER
    SCHOOL_OID VARCHAR2(32)
    PERSON_OID VARCHAR2(32)
    CREATE_DATETIME DATE
    SCHEMA_NAME VARCHAR2(32)
    TABLE_NAME VARCHAR2(32)
    COLUMN_NAME VARCHAR2(32)
    ROW_ID NUMBER
    VALUE VARCHAR2(100)
    ACTION VARCHAR2(15)
    CIA_VERSION NOT NULL NUMBER
    SUB_ROW_ID NUMBER(9)
    This is table from which I will be inserting data into other tables. Some sort of standby data table.
    Data in this table comes in column format which i
    convert into a row. i.e for 1 row in the target table comprises of 10 columns
    then i get 10 different rows for that in work_table2
    The important columns here are table_name, column_name, value which gives me
    the table in which i have to insert the values, the columns of the table & the required values.
    I create views out of this table so i can directly insert into the destination tables from
    the views. The tables to insert into reside in another schema.
    Apart from these columns I also require the job_id, customer_id, action column
    which are part of the tables i am going to insert into but will not come from the
    column_name column of the work_table2 but do come as separate columns in work_table2
    For every row to be inserted into the table i take row_id as the separator and
    use it in my join clause
    In some cases i get the same row_id for two different rows so i use sub_row_id to get individual rows.
    In some cases it is quite possible that i may not get data for few of the columns of the target table. In that case I have I have to show null values in the empty columns
    Here is the query i use to create the view. Actually i have created a view generator
    PLSQL code which automatically creates views for all the tables.
    Though this query gives me the desired output I am very scared looking at the join clause
    Could you suggest a better way to get the output
    CREATE OR REPLACE VIEW CDL_BELLPERIODMASTER
    ( OID, CUSTOMER_ID, ORGUNIT_OID, BELLPERIODSET_OID, PERIOD_NUMBER,
    SHORT_LABEL, NAME, DESCRIPTION, BEGIN_TIME,
    END_TIME, CREATEDBY_OID, CREATEDATE, UPDATEDATE,
    ORIGINTYPECD_OID, OWNER_ORGUNIT_OID, CREATE_BY, UPDATE_BY,
    UPDATE_DATE, YEAR_TAGGED, APPLICATION_VERSION, INACTIVESTATUS,
    ISDELETED, JOB_ID, ACTION )
    AS
    SELECT OID.value,CUSTOMER_ID.value,ORGUNIT_OID.value,BELLPERIODSET_OID.value,
    PERIOD_NUMBER.value,SHORT_LABEL.value,NAME.value,DESCRIPTION.value,
    BEGIN_TIME.value,END_TIME.value,CREATEDBY_OID.value,CREATEDATE.value,
    UPDATEDATE.value,ORIGINTYPECD_OID.value,OWNER_ORGUNIT_OID.value,
    CREATE_BY.value,UPDATE_BY.value,UPDATE_DATE.value,
    YEAR_TAGGED.value,APPLICATION_VERSION.value,INACTIVESTATUS.value,
    ISDELETED.value,jobs.job_id, act. action
    FROM
    (SELECT value , row_id, job_id, sub_row_id FROM work_table2
    WHERE table_name='WSF_BELLPERIODMASTER' and column_name ='OID') OID,
    (SELECT TO_NUMBER(VALUE) value , row_id, job_id, sub_row_id FROM work_table2
    WHERE table_name='WSF_BELLPERIODMASTER' and column_name ='CUSTOMER_ID') CUSTOMER_ID,
    (SELECT value , row_id, job_id, sub_row_id FROM work_table2
    WHERE table_name='WSF_BELLPERIODMASTER' and column_name ='ORGUNIT_OID') ORGUNIT_OID,
    (SELECT value , row_id, job_id, sub_row_id FROM work_table2
    WHERE table_name='WSF_BELLPERIODMASTER' and column_name ='BELLPERIODSET_OID')
    BELLPERIODSET_OID,
    (SELECT TO_NUMBER(VALUE) value , row_id, job_id, sub_row_id FROM work_table2
    WHERE table_name='WSF_BELLPERIODMASTER' and column_name ='PERIOD_NUMBER')
    PERIOD_NUMBER,
    (SELECT value , row_id, job_id, sub_row_id FROM work_table2 WHERE
    table_name='WSF_BELLPERIODMASTER' and column_name ='SHORT_LABEL') SHORT_LABEL,
    (SELECT value , row_id, job_id, sub_row_id FROM work_table2 WHERE
    table_name='WSF_BELLPERIODMASTER' and column_name ='NAME') NAME,
    (SELECT value , row_id, job_id, sub_row_id FROM work_table2
    WHERE table_name='WSF_BELLPERIODMASTER' and column_name ='DESCRIPTION') DESCRIPTION,
    (SELECT value , row_id, job_id, sub_row_id FROM work_table2
    WHERE table_name='WSF_BELLPERIODMASTER' and column_name ='BEGIN_TIME') BEGIN_TIME,
    (SELECT value , row_id, job_id, sub_row_id FROM work_table2
    WHERE table_name='WSF_BELLPERIODMASTER' and column_name ='END_TIME') END_TIME,
    (SELECT value , row_id, job_id, sub_row_id FROM work_table2 WHERE
    table_name='WSF_BELLPERIODMASTER' and column_name ='CREATEDBY_OID') CREATEDBY_OID,
    (SELECT TO_DATE(VALUE,'DD-MON-RRRR') value , row_id, job_id, sub_row_id
    FROM work_table2 WHERE table_name='WSF_BELLPERIODMASTER' and
    column_name ='CREATEDATE') CREATEDATE,
    (SELECT TO_DATE(VALUE,'DD-MON-RRRR') value , row_id, job_id, sub_row_id
    FROM work_table2 WHERE table_name='WSF_BELLPERIODMASTER'
    and column_name ='UPDATEDATE') UPDATEDATE,
    (SELECT value , row_id, job_id, sub_row_id FROM work_table2 WHERE
    table_name='WSF_BELLPERIODMASTER' and column_name ='ORIGINTYPECD_OID')
    ORIGINTYPECD_OID,
    (SELECT value , row_id, job_id, sub_row_id FROM work_table2
    WHERE table_name='WSF_BELLPERIODMASTER' and column_name ='OWNER_ORGUNIT_OID')
    OWNER_ORGUNIT_OID,
    (SELECT value , row_id, job_id, sub_row_id FROM work_table2 WHERE
    table_name='WSF_BELLPERIODMASTER' and column_name ='CREATE_BY') CREATE_BY,
    (SELECT value , row_id, job_id, sub_row_id FROM work_table2
    WHERE table_name='WSF_BELLPERIODMASTER' and column_name ='UPDATE_BY') UPDATE_BY,
    (SELECT TO_DATE(VALUE,'DD-MON-RRRR') value , row_id, job_id, sub_row_id
    FROM work_table2 WHERE table_name='WSF_BELLPERIODMASTER' and
    column_name ='UPDATE_DATE') UPDATE_DATE,
    (SELECT value , row_id, job_id, sub_row_id FROM work_table2
    WHERE table_name='WSF_BELLPERIODMASTER' and column_name ='YEAR_TAGGED') YEAR_TAGGED,
    (SELECT value , row_id, job_id, sub_row_id FROM work_table2
    WHERE table_name='WSF_BELLPERIODMASTER' and column_name ='APPLICATION_VERSION')
    APPLICATION_VERSION,
    (SELECT value , row_id, job_id, sub_row_id FROM work_table2
    WHERE table_name='WSF_BELLPERIODMASTER' and column_name ='INACTIVESTATUS')
    INACTIVESTATUS,
    (SELECT value , row_id, job_id, sub_row_id FROM work_table2
    WHERE table_name='WSF_BELLPERIODMASTER' and column_name ='ISDELETED') ISDELETED,
    (SELECT decode(upper(ACTION),'W','U',ACTION) action ,row_id, job_id, sub_row_id
    FROM work_table2 WHERE table_name='WSF_BELLPERIODMASTER' AND column_name='OID' ) ACT,
    (SELECT row_id , job_id, sub_row_id FROM work_table2
    WHERE table_name='WSF_BELLPERIODMASTER' AND column_name='OID' ) JOBS
    where
    OID.job_id=CUSTOMER_ID.job_id(+) and
    OID.job_id=ORGUNIT_OID.job_id(+) and
    OID.job_id=BELLPERIODSET_OID.job_id(+) and
    OID.job_id=PERIOD_NUMBER.job_id(+) and
    OID.job_id=SHORT_LABEL.job_id(+) and
    OID.job_id=NAME.job_id(+) and
    OID.job_id=DESCRIPTION.job_id(+) and
    OID.job_id=BEGIN_TIME.job_id(+) and
    OID.job_id=END_TIME.job_id(+) and
    OID.job_id=CREATEDBY_OID.job_id(+) and
    OID.job_id=CREATEDATE.job_id(+) and
    OID.job_id=UPDATEDATE.job_id(+) and
    OID.job_id=ORIGINTYPECD_OID.job_id(+) and
    OID.job_id=OWNER_ORGUNIT_OID.job_id(+) and
    OID.job_id=CREATE_BY.job_id(+) and
    OID.job_id=UPDATE_BY.job_id(+) and
    OID.job_id=UPDATE_DATE.job_id(+) and
    OID.job_id=YEAR_TAGGED.job_id(+) and
    OID.job_id=APPLICATION_VERSION.job_id(+) and
    OID.job_id=INACTIVESTATUS.job_id(+) and
    OID.job_id=ISDELETED.job_id(+) and
    OID.job_id= ACT.job_id(+) and
    OID.job_id = JOBS.job_id(+) and
    OID.row_id=CUSTOMER_ID.row_id(+) and
    OID.row_id=ORGUNIT_OID.row_id(+) and
    OID.row_id=BELLPERIODSET_OID.row_id(+) and
    OID.row_id=PERIOD_NUMBER.row_id(+) and
    OID.row_id=SHORT_LABEL.row_id(+) and
    OID.row_id=NAME.row_id(+) and
    OID.row_id=DESCRIPTION.row_id(+) and
    OID.row_id=BEGIN_TIME.row_id(+) and
    OID.row_id=END_TIME.row_id(+) and
    OID.row_id=CREATEDBY_OID.row_id(+) and
    OID.row_id=CREATEDATE.row_id(+) and
    OID.row_id=UPDATEDATE.row_id(+) and
    OID.row_id=ORIGINTYPECD_OID.row_id(+) and
    OID.row_id=OWNER_ORGUNIT_OID.row_id(+) and
    OID.row_id=CREATE_BY.row_id(+) and
    OID.row_id=UPDATE_BY.row_id(+) and
    OID.row_id=UPDATE_DATE.row_id(+) and
    OID.row_id=YEAR_TAGGED.row_id(+) and
    OID.row_id=APPLICATION_VERSION.row_id(+) and
    OID.row_id=INACTIVESTATUS.row_id(+) and
    OID.row_id=ISDELETED.row_id(+) and
    OID.row_id= ACT.row_id(+) and
    OID.row_id = JOBS.row_id(+) and
    OID.sub_row_id=CUSTOMER_ID.sub_row_id(+) and
    OID.sub_row_id=ORGUNIT_OID.sub_row_id(+) and
    OID.sub_row_id=BELLPERIODSET_OID.sub_row_id(+) and
    OID.sub_row_id=PERIOD_NUMBER.sub_row_id(+) and
    OID.sub_row_id=SHORT_LABEL.sub_row_id(+) and
    OID.sub_row_id=NAME.sub_row_id(+) and
    OID.sub_row_id=DESCRIPTION.sub_row_id(+) and
    OID.sub_row_id=BEGIN_TIME.sub_row_id(+) and
    OID.sub_row_id=END_TIME.sub_row_id(+) and
    OID.sub_row_id=CREATEDBY_OID.sub_row_id(+) and
    OID.sub_row_id=CREATEDATE.sub_row_id(+) and
    OID.sub_row_id=UPDATEDATE.sub_row_id(+) and
    OID.sub_row_id=ORIGINTYPECD_OID.sub_row_id(+) and
    OID.sub_row_id=OWNER_ORGUNIT_OID.sub_row_id(+) and
    OID.sub_row_id=CREATE_BY.sub_row_id(+) and
    OID.sub_row_id=UPDATE_BY.sub_row_id(+) and
    OID.sub_row_id=UPDATE_DATE.sub_row_id(+) and
    OID.sub_row_id=YEAR_TAGGED.sub_row_id(+) and
    OID.sub_row_id=APPLICATION_VERSION.sub_row_id(+) and
    OID.sub_row_id=INACTIVESTATUS.sub_row_id(+) and
    OID.sub_row_id=ISDELETED.sub_row_id(+) and
    OID.sub_row_id= ACT.sub_row_id(+) and
    OID.sub_row_id = JOBS.sub_row_id(+)
    Rgrds

    Try to use this sample.
    create or replace view v
    as
    select dept.deptno deptcode, dept.dname deptname, sal amount
    from emp, dept
    where emp.deptno = dept.deptno
    select decode( grouping(rownum), 1, to_number(NULL), deptcode ) deptcode,
    deptname || decode( grouping(rownum), 1, ' total amount' ) deptname,
    sum(amount),
    grouping(deptcode) g1, grouping(deptname) g2, grouping(rownum)
    from v
    group by rollup(deptcode,deptname,rownum)
    having (grouping(deptcode) = 0 and
    grouping(deptname) = 0 and
    grouping(rownum)=0)
    OR (grouping(deptcode) = 0 and
    grouping(deptname) = 0 and
    grouping(rownum)=1)

  • SCSM 2012 - Reporting on Service Level Breached Incidents in SQL Report Builder

    Is anyone clever enough to provide the SQL code required for me to run a report showing the id, title, target end date, and support group for any active incident that has breached its SLA?
    I want to run this report automatically each morning and email it but just can't work out the SQL code

    This is an example of a SLO report that I came up with.  I am sure you can adapt it for your use.  It get SLO information on Service Requests.  It's a daily report that brings back both worker and support group information.
    BEGIN
    DECLARE @Now AS SMALLDATETIME;
    DECLARE @TBL_ServiceRequests AS TABLE (
    SLOtarget SMALLDATETIME,
    SLOwarning SMALLDATETIME,
    AssignedTo NVARCHAR(50),
    SupportGroup NVARCHAR(50));
    BEGIN
    INSERT INTO @TBL_ServiceRequests
    SELECT
    SLO.TargetEndDate_4F17E5C2_86D5_05E8_35DE_6E012567DAB7,
    SLO.TargetWarningDate_B98D2C5F_CBA2_8DB9_CA33_E0F808A9801E,
    UD.DisplayName,
    SR_Group.ServiceRequestSupportGroupValue
    FROM DBO.ServiceRequestDim AS SR
    INNER JOIN DBO.ServiceRequestSupportGroup AS SR_Group
    ON SR.SupportGroup_ServiceRequestSupportGroupId = SR_Group.ServiceRequestSupportGroupId
    LEFT OUTER JOIN {'CMDB'}.ServiceManager.dbo.MT_System$WorkItem$ServiceRequest AS PrimarySR
    ON SR.BaseManagedEntityId = PrimarySR.BaseManagedEntityID
    LEFT OUTER JOIN {'CMDB'}.ServiceManager.dbo.Relationship as Relationship
    ON PrimarySR.BaseManagedEntityID = Relationship.SourceEntityID
    LEFT OUTER JOIN {'CMDB'}.ServiceManager.dbo.RelationshipType as RelationshipType
    ON Relationship.RelationshipTypeID = RelationshipType.RelationshipTypeID
    LEFT OUTER JOIN {'CMDB'}.ServiceManager.dbo.MT_System$SLA$Instance$TimeInformation as SLO
    ON SLO.BaseManagedEntityID = Relationship.TargetEntityID
    LEFT OUTER JOIN DBO.WorkItemDim AS WR
    ON SR.BaseManagedEntityId = WR.BaseManagedEntityId
    LEFT OUTER JOIN DBO.WorkItemAssignedToUserFactvw AS ASTO
    ON WR.WorkItemDimKey = ASTO.WorkItemDimKey
    LEFT OUTER JOIN DBO.UserDim AS UD
    ON ASTO.WorkItemAssignedToUser_UserDimKey = UD.UserDimKey
    WHERE
    SR.SupportGroup_ServiceRequestSupportGroupId IN ({'Your Support Group Ids'})
    AND
    SR.Status_ServiceRequestStatusId IN (7,8,9)
    AND
    SR.IsDeleted = 0
    AND
    RelationshipType.RelationshipTypeName = 'System.WorkItemHasSLAInstanceInformation' ;
    END
    BEGIN
    SELECT @Now = CAST(CURRENT_TIMESTAMP AS SMALLDATETIME);
    SELECT
    [@TBL_ServiceRequests].AssignedTo as [Assigned To],
    COUNT(*) AS [Open],
    SUM(
    CASE
    WHEN [@TBL_ServiceRequests].[SLOtarget] > @Now THEN 1 ELSE 0
    END
    ) AS [On Time],
    SUM(
    CASE
    WHEN @Now BETWEEN [@TBL_ServiceRequests].[SLOwarning] AND [@TBL_ServiceRequests].[SLOtarget] THEN 1 ELSE 0
    END
    ) AS [Near Overdue],
    SUM(
    CASE
    WHEN [@TBL_ServiceRequests].[SLOtarget] < @Now THEN 1 ELSE 0
    END
    ) AS [Overdue]
    FROM @TBL_ServiceRequests
    WHERE [@TBL_ServiceRequests].[AssignedTo] IS NOT NULL
    GROUP BY [AssignedTo]
    UNION ALL
    SELECT
    [@TBL_ServiceRequests].[SupportGroup] + ' Assigned',
    COUNT(*),
    SUM(
    CASE
    WHEN [@TBL_ServiceRequests].[SLOtarget] > @Now THEN 1 ELSE 0
    END
    ) AS [On Time],
    SUM(
    CASE
    WHEN @Now BETWEEN [@TBL_ServiceRequests].[SLOwarning] AND [@TBL_ServiceRequests].[SLOtarget] THEN 1 ELSE 0
    END
    ) AS [Near Overdue],
    SUM(
    CASE
    WHEN [@TBL_ServiceRequests].[SLOtarget] < @Now THEN 1 ELSE 0
    END
    ) AS [Overdue]
    FROM @TBL_ServiceRequests
    WHERE [@TBL_ServiceRequests].[AssignedTo] IS NOT NULL
    GROUP BY [@TBL_ServiceRequests].SupportGroup
    UNION ALL
    SELECT
    [@TBL_ServiceRequests].[SupportGroup] + ' Unassigned',
    COUNT(*),
    SUM(
    CASE
    WHEN [@TBL_ServiceRequests].[SLOtarget] > @Now THEN 1 ELSE 0
    END
    ) AS [On Time],
    SUM(
    CASE
    WHEN @Now BETWEEN [@TBL_ServiceRequests].[SLOwarning] AND [@TBL_ServiceRequests].[SLOtarget] THEN 1 ELSE 0
    END
    ) AS [Near Overdue],
    SUM(
    CASE
    WHEN [@TBL_ServiceRequests].[SLOtarget] < @Now THEN 1 ELSE 0
    END
    ) AS [Overdue]
    FROM @TBL_ServiceRequests
    WHERE [@TBL_ServiceRequests].[AssignedTo] IS NULL
    GROUP BY [@TBL_ServiceRequests].SupportGroup
    END
    END

  • How to set field length

    Hi,
    im using sap crystal report version 13.0.2000.0...
    i kept one sting field in details section, in stored procedure its length is 50 characters but in my report it is displaying only 10 characters..how to format this field,is there any formula for this?

    ya i followed your suggestion but im not getting full data in report
    ..this is my stored procedure
    ALTER PROCEDURE [dbo].[GetSecretarywiseConsolidatedPurchases]
         -- Add the parameters for the stored procedure here
         @Fromdate datetime,
         @ToDate datetime,
         @TraderID int
    AS
    BEGIN
              DECLARE @temptb TABLE     
              (TBID int IDENTITY(1,1) NOT NULL,
                   EntDate datetime,
                   BillNo nvarchar(50),
                   URDQuintals Decimal(18,2),
                   URDValue Decimal(18,2),
                   RDQuintals Decimal(18,2),
                   RDValue Decimal(18,2),
                   NLQuintals Decimal(18,2),
                   NLValue Decimal(18,2),
                   ISQuintals Decimal(18,2),
                   ISDValue Decimal(18,2),               
                   MarketFee Decimal(18,2),
                   TraderName nvarchar(100),
                   LicenseNo nvarchar(100)
              --Inserts URD Purchases
              insert into @temptb (EntDate,BillNo,URDQuintals,URDValue,MarketFee)
              (SELECT     Purchase.EntryDate, Purchase.PurchaseBillNo, PurchaseCommodity.Quantity/100, PurchaseCommodity.Value, PurchaseCommodity.ActualMarketFee
                        FROM Purchase  with(nolock) INNER JOIN PurchaseCommodity with(nolock) ON Purchase.PurchaseID = PurchaseCommodity.PurchaseID where
                        TraderID=@traderID and EntryDate>=@Fromdate and EntryDate<=@ToDate and OriginTypeID=1 and purchase.Isdeleted=0)
    Select * from @temptb order by EntDate,BillNo
    and field 'BillNo' is my problem...in sp BillNo showing full data but in report it is  displaying only 10 characters ..
    in sp-->BillNo is 00010050027293
    in report-->0001005002
    Edited by: kiran86 on Feb 3, 2011 11:29 AM
    Edited by: kiran86 on Feb 3, 2011 11:29 AM

  • Oracle not return results only in Oracle11g

    Hello everyone.
    I have a very strange problem.
    I have this query:
    SELECT *
      FROM
        (SELECT objT.*,
          UP.UserId permissionUserId,
          UP.ObjectVersionLabel permissionObjectId,
          UP.DocumentAccessPermissions permissionDocAccessPermissions,
          UP.SpecialPermissions permissionSpecialPermissions,
          UP.IsDeleted permissionIsDeleted
        FROM TMPLT_WORKFLOWS objT
        LEFT JOIN
          (SELECT * FROM PERMIT_WORKFLOWS_USERS ut WHERE ut.UserId = 81
          ) UP
        ON objT.VersionLabel = UP.ObjectVersionLabel
        INNER JOIN RELAT_SITES_WORKFLOW_TEMPLATES siteT
        ON objT.VersionLabel     = siteT.ObjectVersionLabel
        WHERE objT.IsDeleted    <> 1
        AND ( UP.UserId = 81 OR UP.UserId IS NULL)
        AND ( UP.IsDeleted      <> 1  OR UP.IsDeleted IS NULL)
        AND objT.IsStoragePolicy = 0
        AND IsCurrent            = 1
        AND siteT.IsDeleted     <> 1
        AND ( siteT.SiteId       = 4  OR siteT.SiteId = -101)
        ) A
    WHERE A.TemplateId IN
        SELECT  TemplateId
        FROM TMPLT_WORKFLOWS
        WHERE VersionLabel NOT IN
          (SELECT ObjectVersionLabel
          FROM PERMIT_WORKFLOWS_USERS
          WHERE UserId = 81
          AND SpecialPermissions BETWEEN 12288 AND 16383
          AND IsDeleted = 0)
    )when I runs the query on Oracle11G I got no results.
    If I runs this query on Oracle10g with the same data I got results.
    I started to investigate this and I saw two strange things:
    1. If I write 'SELECT To_Number(TemplateId)' instead of 'SELECT TemplateId' in the IN clause everithing works.
    2. If I comment out the line: 'AND ( UP.UserId = 81 OR UP.UserId IS NULL)' everything works - For this query UP is empty so this isn't supposed to change the results.
    Again, it's happening only on 11g.
    What is this?

    I created a simple example.
    Creation of table CUSTOMERS
    --  DDL for Table CUSTOMERS
      CREATE TABLE "TESTS"."CUSTOMERS"
       (     "CUSTOMERLABEL" NVARCHAR2(50),
         "CUSTOMERNAME" NVARCHAR2(255),
         "CUSTOMERID" NUMBER(10,0)
       ) SEGMENT CREATION IMMEDIATE
      PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
      STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
      PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
      TABLESPACE "USERS" ;
    --  DDL for Index CUSTOMERS_PK
      CREATE UNIQUE INDEX "TESTS"."CUSTOMERS_PK" ON "TESTS"."CUSTOMERS" ("CUSTOMERID")
      PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS
      STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
      PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
      TABLESPACE "USERS" ;
    --  Constraints for Table CUSTOMERS
      ALTER TABLE "TESTS"."CUSTOMERS" ADD CONSTRAINT "CUSTOMERS_PK" PRIMARY KEY ("CUSTOMERID")
      USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS
      STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
      PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
      TABLESPACE "USERS"  ENABLE;
      ALTER TABLE "TESTS"."CUSTOMERS" MODIFY ("CUSTOMERLABEL" NOT NULL ENABLE);
      ALTER TABLE "TESTS"."CUSTOMERS" MODIFY ("CUSTOMERNAME" NOT NULL ENABLE);
      ALTER TABLE "TESTS"."CUSTOMERS" MODIFY ("CUSTOMERID" NOT NULL ENABLE);Creation of table ORDERS
    --  DDL for Table ORDERS
      CREATE TABLE "TESTS"."ORDERS"
       (     "ORDERID" NUMBER(10,0),
         "CUSTOMERLABEL" NVARCHAR2(50),
         "ORDERDETAILS" NVARCHAR2(255)
       ) SEGMENT CREATION IMMEDIATE
      PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
      STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
      PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
      TABLESPACE "USERS" ;
    --  DDL for Index ORDERS_PK
      CREATE UNIQUE INDEX "TESTS"."ORDERS_PK" ON "TESTS"."ORDERS" ("ORDERID")
      PCTFREE 10 INITRANS 2 MAXTRANS 255
      STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
      PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
      TABLESPACE "USERS" ;
    --  Constraints for Table ORDERS
      ALTER TABLE "TESTS"."ORDERS" ADD CONSTRAINT "ORDERS_PK" PRIMARY KEY ("ORDERID")
      USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255
      STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
      PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
      TABLESPACE "USERS"  ENABLE;
      ALTER TABLE "TESTS"."ORDERS" MODIFY ("ORDERID" NOT NULL ENABLE);
      ALTER TABLE "TESTS"."ORDERS" MODIFY ("CUSTOMERLABEL" NOT NULL ENABLE);
      ALTER TABLE "TESTS"."ORDERS" MODIFY ("ORDERDETAILS" NOT NULL ENABLE);I inserted two rows to table CUSTOMERS:
    CustomerLabel | CustomerName | CustomerId
    Label1 | George | 1
    Label2 | Tom | 2
    I also inserted two rows to table ORDERS:
    OrderId| CustomerLabel | OrderDetails
    7 | Label1 | Details1
    8 | Label1 | Details2
    Now, when i runs this simple query I got no results:
    SELECT * FROM customers CST
    LEFT JOIN (SELECT * FROM orders WHERE orderid = 1) UP
    ON CST.CustomerLabel = UP.CustomerLabel
    WHERE ( UP.orderid   = 1 OR UP.orderid       IS NULL)
    AND CST.customerId IN (SELECT customerId FROM customers)Thank you.

  • Query SCOM Objects state by class

    Hi,
    I want to perform an SQL Query by Object class, that will show me the object name, its path, and its current state (same as discovered inventory on scom console).
    Query that will return me same output as this powershell command:
    Get-SCOMClass -Name "$classtype" | Get-SCOMClassInstance | Sort-Object HealthState,Path -Descending   | select-object {$_.Path + " " + $_.displayname + "" + $_.HealthState + ""}
    The thing is that powershell command  takes 30 secs to run, thus I want to do it through SQL Query which is much faster.
    I've wrote the query above:
    SELECT distinct
    BME.BaseManagedEntityId,
    TBME.DisplayName AS Path,
    BME.DisplayName,
    TYPE.TypeName AS Class,
    CASE S.HealthState WHEN 3 THEN 'Critical' WHEN 2 THEN 'Warning' WHEN 1 THEN 'Success' WHEN 0 THEN 'Uninitialized' ELSE 'Unknown' END AS STATE,
    S.LastModified
    FROM BaseManagedEntity BME WITH(NOLOCK)
    INNER JOIN TypedManagedEntity TME WITH(NOLOCK) ON BME.BaseManagedEntityId = TME.BaseManagedEntityId AND BME.IsDeleted = 0 AND TME.IsDeleted = 0
    INNER JOIN BaseManagedEntity TBME WITH(NOLOCK) ON BME.TopLevelHostEntityId = TBME.BaseManagedEntityId AND TBME.IsDeleted = 0
    INNER JOIN ManagedType TYPE WITH(NOLOCK) ON TME.ManagedTypeID = TYPE.ManagedTypeID
    INNER JOIN State AS S ON S.LastModified = (select max(LastModified) from State where bme.basemanagedentityid=BaseManagedEntityId)
    where type.TypeName like 'Microsoft.Linux.Computer'
    order by STATE
    the problem is that most of queried servers' state isshown as 'Uninitialized' while on scom console it is shown as helathy.
    What am I doing wrong?

    The Health state of the ManagedEntity is determined by monitor system.health.enetitystate. rather than using latest modified health state.
    It is better to rewrite the SQL statement as
    SELECT distinct
     BME.BaseManagedEntityId,
     TBME.DisplayName AS Path,
     BME.DisplayName,
     TYPE.TypeName AS Class,
     CASE S.HealthState WHEN 3 THEN 'Critical' WHEN 2 THEN 'Warning' WHEN 1 THEN 'Success' WHEN 0 THEN 'Uninitialized' ELSE 'Unknown' END AS STATE
    FROM BaseManagedEntity BME WITH(NOLOCK)
     INNER JOIN TypedManagedEntity TME WITH(NOLOCK) ON BME.BaseManagedEntityId = TME.BaseManagedEntityId AND BME.IsDeleted = 0 AND TME.IsDeleted = 0
     INNER JOIN BaseManagedEntity TBME WITH(NOLOCK) ON BME.TopLevelHostEntityId = TBME.BaseManagedEntityId AND TBME.IsDeleted = 0
     INNER JOIN ManagedType TYPE WITH(NOLOCK) ON TME.ManagedTypeID = TYPE.ManagedTypeID
     INNER JOIN State AS S ON S.BaseManagedentityid=BME.BaseManagedentityid
     INNER JOIN Monitor M ON M.MonitorId=S.MonitorID
    where M.MonitorName='System.Health.EntityState' like 'Microsoft.Linux.Computer'
    order by STATE
    Roger

  • Querying SCSM CMDB for CI info

    Hi,
    Currently working on a project to utilize the SCSM CMDB using the connectors for AD, SCOM, and SCCM to populate and then feed another CMDB solution that is tied to our ticketing system. Our goal is to maintain the CMDB in SCSM and then sync those changes
    to the other CMDB daily. When writing the query we can get the OS and Hardware information using the views from MTV_Computer and MTV_Microsoft$SystemCenter$Windows$* in the ServiceManager database. We're we are running into issues is we cannot find any views
    or tables to pull the Status of the CI or Users associated with the Computer under the CI Information in the form. Hoping someone can point me in the right direction on finding these items?
    Also, anyone else doing anything similar? There doesn't seem to be a unique identifier to query against in the views to get all of the associated objects. So we're making use of the server names to pull in these items. Is this standard practice or there
    better solutions?
    Thanks,

    The supported method for querying the Service Manager CMDB is to use the SDK with C#.
    http://msdn.microsoft.com/en-us/library/hh965050.aspx
    Here's a survival guide with a lot of good information and starting points for using the SDK
    http://social.technet.microsoft.com/wiki/contents/articles/13472.system-center-2012-service-manager-developer-s-survival-guide.aspx
    Another supported method would be to query the datawarehouse.
    Now, having said that, if you absolutely have to use SQL then let me first give you a quick primer on the Service Manager object structure. Remember, if your queries break anything, Microsoft won't support it. Also, never update or create records in the
    SQL database directly. It will break Service Manager eventually. The SQL database is hands-off..you can look (select) but don't touch (update/delete) :)
    Objects in Service Manager are nothing more than records in SQL tables. Relationships between those objects are defined by "Relationship Types" (which are stored in the "RelationshipType" SQL table). The relationships that exist between
    two objects in Service Manager are also objects themselves..which means they're stored in a single table, the "Relationship" table. Another tip that should help..virtually everything in the SQL DB is identified with a unique Guid (BaseManagedEntityId
    for objects, RelationshipTypeId for relationship types, ManagedTypeId for classes, etc).
    As for CI Status; Status and other properties like it are Enumeration properties (or list properties). These enumerations are defined by a management pack and represent a specific set of values that an object property can have. So, the column in the sql
    table that represents an enumeration value is, you guessed it, a Guid. Enumerations are stored in the EnumType table. For instance, if you look at the MTV_Computer view, you'll find the "ObjectStatus_blahblahblah" column (which is the CI status)
    is nothing but guids. Join it to the EnumType table to get a human-readable status.
    Now let me give you a quick sample query that highlights how you can query for computer objects and their related primary user objects.
    select computer.DisplayName, usr.DisplayName
    from mtv_computer computer with (nolock)
    left outer join relationship rel with (nolock) on rel.SourceEntityId=computer.BaseManagedEntityId
    and rel.RelationshipTypeId='AAF7ADEB-920C-3D3F-2184-1DE2A2CBA5A0' --System.ComputerPrimaryUser
    and rel.IsDeleted=0
    left outer join MTV_System$Domain$User usr with (nolock) on rel.TargetEntityId = usr.BaseManagedEntityId
    inner join BaseManagedEntity bmeComp with (nolock) on computer.BaseManagedEntityId = bmeComp.BaseManagedEntityId
    and bmeComp.IsDeleted=0
    left outer join BaseManagedEntity bmeUser with (nolock) on usr.BaseManagedEntityId = bmeUser.BaseManagedEntityId
    and bmeUser.IsDeleted=0
    where computer.ObjectStatus_4AE3E5FE_BC03_1336_0A45_80BF58DEE57B='ACDCEDB7-100C-8C91-D664-4629A218BD94' --System.ConfigItem.ObjectStatusEnum.Active
    and (usr.ObjectStatus_4AE3E5FE_BC03_1336_0A45_80BF58DEE57B='ACDCEDB7-100C-8C91-D664-4629A218BD94' --System.ConfigItem.ObjectStatusEnum.Active
    or usr.DisplayName is null)
    The guids have comments that indicate what they are. The AAF7... relationship type is the System.ComputerPrimaryUser relationship type. ACDC... is the System.ConfigItem.ObjectStatusEnum.Active enumeration (it represents the "Active" CI Status)
    The overall purpose of this particular sample is to display all windows computers (mtv_computer) in the database and also display the related "primary user" if such a user exists (otherwise, the second column will be null)
    The first two joins tie the computer together with its related primary user through the relationship table.
    The second two joins tie each object to the BaseManagedEntity table which is a repository for every class based object in the CMDB. That table maintains various information about the object, including whether it's deleted or not.
    (Note there are two forms of "deleted". There's "Pending Delete" on a CI which puts the object in the Deleted Items folder in the console. This is a "business logic" status. The other deleted is "IsDeleted", which is
    an SCSM framework status which tells the underlying workflow engine to completely eliminate the object and its history from the CMDB in 2 days. These objects are not visible in the console at all.)
    Notice that I use "with (nolock)" on all the tables. This helps ensure that your reads won't interfer with Service Manager while it talks to the database (through the workflow engine, stored procedures, etc etc).
    I'm going to say it one more time..messing around in the sql database is unsupported!
    Hopefully, though, this post will give you some insight on a couple different ways you can get info out of Service Manager

Maybe you are looking for

  • Get rid of weather notices on ical

    I can't get rid of accuweather notices on ical. I have checked preferences in accuweather app. They are off.

  • Performance Problem, RPC Call auf SQLServer 2000

    Hi, we have a performance problem with SQLServer 2000. We use Bea WLS 6.1, SQLServer 2000, and JDBC Driver mssqlserver4v65.jar from Bea. we use this for performance optimization as in Documetation at "http://www.datadirect-technologies.com/download/d

  • Mac Mail Not Picking up Current Gmail In Inbox

    I hope you can help me.  I am a brand new Mac user and am setting up my new iMac running Mavericks.  I added my gmail account successfully and wish to run it (as I did in Outlook) as a POP account (not IMAP). However when I first added the account, i

  • TS1500 Transferring photos from iPhone to pc

    I've tried trouble shooting my iPhone on my pv and it still won't recognise my phone,any ideas off how to transfer my photos and videos to my pc will be greatly appreciated x ps it used to work fine but now the display box doesn't pop up anymore x I'

  • IPhone app for MacBook Pro?

    I downloaded the IBook app for my Iphone and am enjoying reading books. I see that when I sync my phone, the books from it are moved into ITunes and show up there, but they cannot be read on the MacBook Pro. Is there a version of the IBook reader sof