Scenario Errors during server startup

478 views
Skip to first unread message

ATG Developer

unread,
Aug 15, 2008, 3:47:54 PM8/15/08
to ATG_Tech
Hi,

Can anyone please help me in solving an issue that is causing my logs
to fill during server startup.
I am getting this error for every scenario template present inside
"dss_template_info" under the column "template_name".

atg.process.ProcessException: Multiple scenarioTemplateInfo repository
items found for template /Profile_targeted_promotion.sdt
at
atg.process.ProcessManagerService.findTemplateInfoItem(ProcessManagerService.java:
4462)
at
atg.process.ProcessManagerService.updateTemplateIndividual(ProcessManagerService.java:
7224)
at
atg.process.ProcessManagerService.updateAllTemplatesIndividual(ProcessManagerService.java:
8065)
at
atg.process.ProcessManagerService.startMessageSource(ProcessManagerService.java:
13963)
at
atg.dms.patchbay.ElementManager.startMessageSource(ElementManager.java:
882)
at
atg.dms.patchbay.PatchBayManager.startMessageSources(PatchBayManager.java:
1935)
at
atg.dms.patchbay.PatchBayManager.doStartService(PatchBayManager.java:
597)
at atg.nucleus.GenericService.startService(GenericService.java:495)
at
atg.nucleus.NucleusNameResolver.startService(NucleusNameResolver.java:
1229)

Kartikeya

unread,
Aug 16, 2008, 4:41:37 PM8/16/08
to atg_...@googlegroups.com
 
This error occurs when the ATG Process Editor Server starts up and the database is offline ( or the database goes
down temporarily while server is up and running). The Process Editor Server scans the configpath periodically to
look for new scenario and simultaneously ScenarioManager looks in the database to see if the scenario tables already
contain information about scenarios whose data was found in the configpath. Now, If the database is down or offline at
this point, the ScenarioManager couldn't find scenario data in the database and it adds the scenario data to the database.

And, results in duplicate rows in the DSS_SCENARIO_INFO table, and the server throws the error which you've mentioned.

Fortunately, it has a very easy fix too. You need to query all of the rows in DSS_SCENARIO_INFO to get all the duplicate
rows which are duplicated for the same scenario name, delete the row with the higher ID value and restart ATG PES instance.

Hope this helps.

-Kartik

ATG Developer

unread,
Aug 17, 2008, 12:31:03 PM8/17/08
to ATG_Tech
Hi Kartikeya,
Thanks for your response.

I have a query regarding your response.

"The Process Editor Server
scans the configpath periodically to
look for new scenario and simultaneously ScenarioManager looks in the
database to see if the scenario tables already
contain information about scenarios whose data was found in the
configpath.
Now, If the database is down or offline at
this point, the ScenarioManager couldn't find scenario data in the
database
and it adds the scenario data to the database."

Since the database is down or offline while reading, then how is it
allowing to add new entries?

Thanks in advance.




On Aug 17, 1:41 am, Kartikeya <kartikey...@gmail.com> wrote:
> This error occurs when the ATG Process Editor Server starts up and the
> database is offline ( or the database goes
> down temporarily while server is up and running). The Process Editor Server
> scans the configpath periodically to
> look for new scenario and simultaneously ScenarioManager looks in the
> database to see if the scenario tables already
> contain information about scenarios whose data was found in the configpath.
> Now, If the database is down or offline at
> this point, the ScenarioManager couldn't find scenario data in the database
> and it adds the scenario data to the database.
>
> And, results in duplicate rows in the DSS_SCENARIO_INFO table, and the
> server throws the error which you've mentioned.
>
> Fortunately, it has a very easy fix too. You need to query all of the rows
> in DSS_SCENARIO_INFO to get all the duplicate
> rows which are duplicated for the same scenario name, delete the row with
> the higher ID value and restart ATG PES instance.
>
> Hope this helps.
>
> -Kartik
>
> On Fri, Aug 15, 2008 at 12:47 PM, ATG Developer <vibhorjai...@gmail.com>wrote:
>
>
>
>
>
> > Hi,
>
> > Can anyone please help me in solving an issue that is causing my logs
> > to fill during server startup.
> > I am getting this error for every scenario template present inside
> > "dss_template_info" under the column "template_name".
>
> > atg.process.ProcessException: Multiple scenarioTemplateInfo repository
> > items found for template /Profile_targeted_promotion.sdt
> >        at
>
> > atg.process.ProcessManagerService.findTemplateInfoItem(ProcessManagerServic­e.java:
> > 4462)
> >        at
>
> > atg.process.ProcessManagerService.updateTemplateIndividual(ProcessManagerSe­rvice.java:
> > 7224)
> >        at
>
> > atg.process.ProcessManagerService.updateAllTemplatesIndividual(ProcessManag­erService.java:
> > 8065)
> >        at
>
> > atg.process.ProcessManagerService.startMessageSource(ProcessManagerService.­java:
> > 13963)
> >        at
> > atg.dms.patchbay.ElementManager.startMessageSource(ElementManager.java:
> > 882)
> >        at
> > atg.dms.patchbay.PatchBayManager.startMessageSources(PatchBayManager.java:
> > 1935)
> >        at
> > atg.dms.patchbay.PatchBayManager.doStartService(PatchBayManager.java:
> > 597)
> >        at atg.nucleus.GenericService.startService(GenericService.java:495)
> >        at
> > atg.nucleus.NucleusNameResolver.startService(NucleusNameResolver.java:
> > 1229)- Hide quoted text -
>
> - Show quoted text -

Kartikeya

unread,
Aug 17, 2008, 12:44:50 PM8/17/08
to atg_...@googlegroups.com
 
These entries are held in a queue until the database comes back online. When DB comes back, it starts
entering the duplicate rows.
 
-Kartik

Jeremy Sears

unread,
Aug 18, 2008, 9:33:12 AM8/18/08
to atg_...@googlegroups.com
I'm aware of no such queue. If the database were down, you would have
more obvious problems, such as a connection refused to the DB. You
certainly wouldn't get duplicate results returned from the database if
it were down.

The info about the process editor server comparing the file system to
the DB and updating the DB is correct. All servers in the cluster
which are not configured as a process editor server simply read the
configuration from the database once the process editor server writes
it there. The process editor server is the only one that actually
reads the SDL files, all other servers are slaves to the DB.

I've never seen this particular error before, but I'm guessing you may
have configured more than one server in your cluster as a process
editor server -- there should be only one. Check your
/atg/scenario/scenarioManager.xml files and ensure that only one
server in the cluster has the editor server configuration defined.
--
Jeremy Sears

Kartikeya

unread,
Aug 18, 2008, 10:30:58 AM8/18/08
to atg_...@googlegroups.com
I believe this is a known bug in ATG.

Jeremy Sears

unread,
Aug 18, 2008, 10:46:43 AM8/18/08
to atg_...@googlegroups.com
I've just confirmed that this problem will occur if two servers both
thought they were process editor servers, AND they both got started at
the same time, AND there were no scenarios yet in the database. At
startup, each process editor server would query the database to find
all scenarios currently in the db. Both would find no scenarios. Each
would proceed to create an entry in the dss_scenario_info table for
each scenario that it found in its scenario registry.

I recommend you ensure that only one server is configured as a process
editor server.
--
Jeremy Sears



On Mon, Aug 18, 2008 at 10:30 AM, Kartikeya <karti...@gmail.com> wrote:
> I believe this is a known bug in ATG.
>

Kartikeya

unread,
Aug 18, 2008, 10:54:53 AM8/18/08
to atg_...@googlegroups.com
This could be one of the reasons where 2 PES are making these
entries. However, I have seen many customers facing this problem in past
because either they have started PES instance without up and running DB
or PES couldn't check query DB because of network congestion.
 
Please see solution ID atg40132 on customer care site.
 
-Katik 

On Mon, Aug 18, 2008 at 7:46 AM, Jeremy Sears <jsears.net@gmail.com> wrote:

I've just confirmed that this problem will occur if two servers both
thought they were process editor servers, AND they both got started at
the same time, AND there were no scenarios yet in the database.  At
startup, each process editor server would query the database to find
all scenarios currently in the db. Both would find no scenarios.  Each
would proceed to create an entry in the dss_scenario_info table for
each scenario that it found in its scenario registry.

I recommend you ensure that only one server is configured as a process
editor server.
--
Jeremy Sears



On Mon, Aug 18, 2008 at 10:30 AM, Kartikeya <karti...@gmail.com> wrote:
> I believe this is a known bug in ATG.
>

ATG Developer

unread,
Aug 19, 2008, 3:30:31 PM8/19/08
to ATG_Tech
Hi,

thanks for your inputs.
I am able to get rid of the server errors during startup by removing
duplicate rows from the scenario tables.
However, i am still wondering what could be the possible cause of the
error.
I get patchbay failed error at times when i have two different ATG
applications running simultaneously on two different profiles in
Websphere 6.1....is this error related to Process Editor Server as
well????

Please suggest.
Thanks.

On Aug 18, 7:54 pm, Kartikeya <kartikey...@gmail.com> wrote:
> This could be one of the reasons where 2 PES are making these
> entries. However, I have seen many customers facing this problem in past
> because either they have started PES instance without up and running DB
> or PES couldn't check query DB because of network congestion.
>
> Please see solution ID atg40132 on customer care site.
>
> -Katik
>
>
>
> On Mon, Aug 18, 2008 at 7:46 AM, Jeremy Sears <jsears....@gmail.com> wrote:
>
> > I've just confirmed that this problem will occur if two servers both
> > thought they were process editor servers, AND they both got started at
> > the same time, AND there were no scenarios yet in the database.  At
> > startup, each process editor server would query the database to find
> > all scenarios currently in the db. Both would find no scenarios.  Each
> > would proceed to create an entry in the dss_scenario_info table for
> > each scenario that it found in its scenario registry.
>
> > I recommend you ensure that only one server is configured as a process
> > editor server.
> > --
> > Jeremy Sears
>
> > On Mon, Aug 18, 2008 at 10:30 AM, Kartikeya <kartikey...@gmail.com> wrote:
> > > I believe this is a known bug in ATG.
>
> > > On Mon, Aug 18, 2008 at 6:33 AM, Jeremy Sears <jsears....@gmail.com>
> > wrote:
>
> > >> I'm aware of no such queue.  If the database were down, you would have
> > >> more obvious problems, such as a connection refused to the DB.  You
> > >> certainly wouldn't get duplicate results returned from the database if
> > >> it were down.
>
> > >> The info about the process editor server comparing the file system to
> > >> the DB and updating the DB is correct.  All servers in the cluster
> > >> which are not configured as a process editor server simply read the
> > >> configuration from the database once the process editor server writes
> > >> it there.  The process editor server is the only one that actually
> > >> reads the SDL files, all other servers are slaves to the DB.
>
> > >> I've never seen this particular error before, but I'm guessing you may
> > >> have configured more than one server in your cluster as a process
> > >> editor server -- there should be only one.  Check your
> > >> /atg/scenario/scenarioManager.xml files and ensure that only one
> > >> server in the cluster has the editor server configuration defined.
> > >> --
> > >> Jeremy Sears
>
> > >> On Sun, Aug 17, 2008 at 12:44 PM, Kartikeya <kartikey...@gmail.com>
> > wrote:
>
> > >> > These entries are held in a queue until the database comes back
> > online.
> > >> > When
> > >> > DB comes back, it starts
> > >> > entering the duplicate rows.
>
> > >> > -Kartik
>
> > >> > On Sun, Aug 17, 2008 at 9:31 AM, ATG Developer <
> > vibhorjai...@gmail.com>
> > >> >> > - Show quoted text -- Hide quoted text -

ATG Developer

unread,
Aug 29, 2008, 2:41:53 AM8/29/08
to ATG_Tech
Hi Jeremy/Kartikeya,

I tried to configure the process editor server and configured it to my
local system.
It was earlier pointing to some other machine.

However, now am getting some other exceptions on server start up.
I need some information about scenario server.

what is the user of ip address configured in dss_server_id???
What difference does it make when ther scenarioManager.xml has process
editor server different than the one in dss_server_id??

At present with the scenarioManager.xml pointing to my local and
dss_server_id pointed to my local am getting following exceptions:


[8/29/08 12:09:45:890 IST] 00000015 SystemOut O /atg/userprofiling/
ProfileAdapterRepository SQL Statement Failed: [++SQLInsert++]
INSERT INTO
dss_scenario_info(id,scenario_name,scenario_status,modification_time,creation_time,author,last_modified_by,psm_version,sdl)
VALUES(?,?,?,?,?,?,?,?,?)
-- Parameters --
p[1] = {pd} 420000001 (java.lang.String)
p[2] = {pd: processName} /recorders/dcs-analytics.sdl
(java.lang.String)
p[3] = {pd: processStatus} 1 (java.lang.Integer)
p[4] = {pd: modificationTime} 1049744608083 (java.lang.Long)
p[5] = {pd: creationTime} 1049381795814 (java.lang.Long)
p[6] = {pd: author} admin (java.lang.String)
p[7] = {pd: lastModifiedBy} admin (java.lang.String)
p[8] = {pd: stateMachineVersion} 5 (java.lang.Integer)
p[9] = {pd: pdl} [B@58c658c6 ([B)
[--SQLInsert--]

[8/29/08 12:09:45:953 IST] 00000015 SystemOut O /atg/scenario/
ScenarioManager Error adding process /recorders/dcs-analytics.sdl;
rolling back the transaction CONTAINER:atg.process.ProcessException;
SOURCE:CONTAINER:atg.repository.RepositoryException;
SOURCE:java.sql.SQLException: ORA-01460: unimplemented or unreasonable
conversion requested

at
atg.process.ProcessManagerService.createProcessInfoItem(ProcessManagerService.java:
3438)
at
atg.process.ProcessManagerService.addProcessGlobal(ProcessManagerService.java:
6268)
at
atg.process.ProcessManagerService.updateProcessGlobal(ProcessManagerService.java:
6041)
at
atg.process.ProcessManagerService.updateAllProcessesGlobal(ProcessManagerService.java:
7832)
at
atg.process.ProcessManagerService.updateAllProcessesGlobal(ProcessManagerService.java:
7851)
at
atg.process.ProcessManagerService.updateAllProcessesGlobal(ProcessManagerService.java:
7689)
at
atg.process.ProcessManagerService.startMessageSource(ProcessManagerService.java:
13888)
at
atg.dms.patchbay.ElementManager.startMessageSource(ElementManager.java:
882)
....stack trace CROPPED after 10 lines.
Caused by :CONTAINER:atg.repository.RepositoryException;
SOURCE:java.sql.SQLException: ORA-01460: unimplemented or unreasonable
conversion requested

at atg.adapter.gsa.GSAItemDescriptor.addItem(GSAItemDescriptor.java:
5794)
at atg.adapter.gsa.GSARepository.addItem(GSARepository.java:879)
at
atg.process.ProcessManagerService.createProcessInfoItem(ProcessManagerService.java:
3435)
at
atg.process.ProcessManagerService.addProcessGlobal(ProcessManagerService.java:
6268)
at
atg.process.ProcessManagerService.updateProcessGlobal(ProcessManagerService.java:
6041)
at
atg.process.ProcessManagerService.updateAllProcessesGlobal(ProcessManagerService.java:
7832)
at
atg.process.ProcessManagerService.updateAllProcessesGlobal(ProcessManagerService.java:
7851)
at
atg.process.ProcessManagerService.updateAllProcessesGlobal(ProcessManagerService.java:
7689)
....stack trace CROPPED after 10 lines.
Caused by (#2):java.sql.SQLException: ORA-01460: unimplemented or
unreasonable conversion requested

at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289)
at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:573)
at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1891)
at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:
1093)
at
oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:
2047)
at
oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:
1940)
at
oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:
2709)
....stack trace CROPPED after 10 lines.
[8/29/08 12:09:45:953 IST] 00000015 SystemOut O



Please throw some pointers of any root cause of this behaviour.

Thanks.

George Oprica

unread,
Sep 5, 2008, 11:07:02 AM9/5/08
to atg_...@googlegroups.com
sounds like a JDBC driver problem... there are BLOB columns in the DB
and your JDBC driver doesn't support them. You have to use a 10.1.x
Thin driver as specified in the supported envs pages.

- George

ATG Developer

unread,
Sep 13, 2008, 1:02:08 PM9/13/08
to ATG_Tech
Thanks George.
It solved the problem.
The driver when i changed removed the problem.

Thanks again :)

On Sep 5, 8:07 pm, "George Oprica" <gopr...@gmail.com> wrote:
> sounds like a JDBC driver problem... there are BLOB columns in the DB
> and your JDBC driver doesn't support them. You have to use a 10.1.x
> Thin driver as specified in the supported envs pages.
>
> - George
>
>
>
> On Fri, Aug 29, 2008 at 2:41 AM, ATG Developer <vibhorjai...@gmail.com> wrote:
>
> > Hi Jeremy/Kartikeya,
>
> > I tried to configure the process editor server and configured it to my
> > local system.
> > It was earlier pointing to some other machine.
>
> > However, now am getting some other exceptions on server start up.
> > I need some information about scenario server.
>
> > what is the user of ip address configured in dss_server_id???
> > What difference does it make when ther scenarioManager.xml has process
> > editor server different than the one in dss_server_id??
>
> > At present with the scenarioManager.xml pointing to my local and
> > dss_server_id pointed to my local am getting following exceptions:
>
> > [8/29/08 12:09:45:890 IST] 00000015 SystemOut     O /atg/userprofiling/
> > ProfileAdapterRepository        SQL Statement Failed: [++SQLInsert++]
> >  INSERT INTO
> > dss_scenario_info(id,scenario_name,scenario_status,modification_time,creati­on_time,author,last_modified_by,psm_version,sdl)
> >  VALUES(?,?,?,?,?,?,?,?,?)
> > -- Parameters --
> > p[1] = {pd} 420000001 (java.lang.String)
> > p[2] = {pd: processName} /recorders/dcs-analytics.sdl
> > (java.lang.String)
> > p[3] = {pd: processStatus} 1 (java.lang.Integer)
> > p[4] = {pd: modificationTime} 1049744608083 (java.lang.Long)
> > p[5] = {pd: creationTime} 1049381795814 (java.lang.Long)
> > p[6] = {pd: author} admin (java.lang.String)
> > p[7] = {pd: lastModifiedBy} admin (java.lang.String)
> > p[8] = {pd: stateMachineVersion} 5 (java.lang.Integer)
> > p[9] = {pd: pdl} [B@58c658c6 ([B)
> > [--SQLInsert--]
>
> > [8/29/08 12:09:45:953 IST] 00000015 SystemOut     O /atg/scenario/
> > ScenarioManager Error adding process /recorders/dcs-analytics.sdl;
> > rolling back the transaction    CONTAINER:atg.process.ProcessException;
> > SOURCE:CONTAINER:atg.repository.RepositoryException;
> > SOURCE:java.sql.SQLException: ORA-01460: unimplemented or unreasonable
> > conversion requested
>
> >        at
> > atg.process.ProcessManagerService.createProcessInfoItem(ProcessManagerServi­ce.java:
> > 3438)
> >        at
> > atg.process.ProcessManagerService.addProcessGlobal(ProcessManagerService.ja­va:
> > 6268)
> >        at
> > atg.process.ProcessManagerService.updateProcessGlobal(ProcessManagerService­.java:
> > 6041)
> >        at
> > atg.process.ProcessManagerService.updateAllProcessesGlobal(ProcessManagerSe­rvice.java:
> > 7832)
> >        at
> > atg.process.ProcessManagerService.updateAllProcessesGlobal(ProcessManagerSe­rvice.java:
> > 7851)
> >        at
> > atg.process.ProcessManagerService.updateAllProcessesGlobal(ProcessManagerSe­rvice.java:
> > 7689)
> >        at
> > atg.process.ProcessManagerService.startMessageSource(ProcessManagerService.­java:
> > 13888)
> >        at
> > atg.dms.patchbay.ElementManager.startMessageSource(ElementManager.java:
> > 882)
> > ....stack trace CROPPED after 10 lines.
> > Caused by :CONTAINER:atg.repository.RepositoryException;
> > SOURCE:java.sql.SQLException: ORA-01460: unimplemented or unreasonable
> > conversion requested
>
> >        at atg.adapter.gsa.GSAItemDescriptor.addItem(GSAItemDescriptor.java:
> > 5794)
> >        at atg.adapter.gsa.GSARepository.addItem(GSARepository.java:879)
> >        at
> > atg.process.ProcessManagerService.createProcessInfoItem(ProcessManagerServi­ce.java:
> > 3435)
> >        at
> > atg.process.ProcessManagerService.addProcessGlobal(ProcessManagerService.ja­va:
> > 6268)
> >        at
> > atg.process.ProcessManagerService.updateProcessGlobal(ProcessManagerService­.java:
> > 6041)
> >        at
> > atg.process.ProcessManagerService.updateAllProcessesGlobal(ProcessManagerSe­rvice.java:
> > 7832)
> >        at
> > atg.process.ProcessManagerService.updateAllProcessesGlobal(ProcessManagerSe­rvice.java:
> > 7851)
> >        at
> > atg.process.ProcessManagerService.updateAllProcessesGlobal(ProcessManagerSe­rvice.java:
> > 7689)
> > ....stack trace CROPPED after 10 lines.
> > Caused by (#2):java.sql.SQLException: ORA-01460: unimplemented or
> > unreasonable conversion requested
>
> >        at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
> >        at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289)
> >        at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:573)
> >        at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1891)
> >        at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:
> > 1093)
> >        at
> > oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:
> > 2047)
> >        at
> > oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:
> > 1940)
> >        at
> > oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.jav­a:
> ...
>
> read more »- Hide quoted text -
Reply all
Reply to author
Forward
0 new messages