[Glass] Error migrating instances

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

[Glass] Error migrating instances

Sebastia Van Lacke
Hi all,

I'm getting an error while migrating instances. I have added an instance variable to a class, and I trying to migrate the instances by evaluating this code:

| userHist allUsers |
userHist := CSUserRequest classHistory.
allUsers := SystemRepository listInstances: userHist.

1 to: userHist size-1 do: [:index |
(userHist at: index) migrateInstances:(allUsers at: index) to: (userHist at: userHist size)].

After some minutes, I get this error:

a Error occurred (error 2501), An operation that needs to acquire the gcLock was not able to get the lock within a reasonable amount of time.

I have no idea how to proceed. I will appreciate some help.

Thank you very much

Sebastián




--

sebastian van lacke | web developer caesar systems | see clearly. decide smarter.

[hidden email] | t: +1.281.598.8790 | t: +54.11.4389.0126 | petrovr.blogspot.com | www.caesarsystems.com 

This message and any attached documents contain information from Caesar Systems LLC that may be confidential/trade secret and/or privileged. If you are not the intended recipient, you may not read, copy, distribute or use this information. If you have received this transmission in error, please notify the sender immediately by telephone or by reply e-mail and then delete this message.


_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass
Reply | Threaded
Open this post in threaded view
|

Re: [Glass] Error migrating instances

James Foster-9
Hi Sebastián,

I did a search for ‘gcLock’ in the System Admin Guide and found several operations that require and/or hold the lock. In particular, see pages 310-11. Also, you can determine the session holding the GcLock by using the following:

System sessionIdHoldingGcLock

James

On Jan 15, 2014, at 4:40 AM, Sebastian Van Lacke <[hidden email]> wrote:

Hi all,

I'm getting an error while migrating instances. I have added an instance variable to a class, and I trying to migrate the instances by evaluating this code:

| userHist allUsers |
userHist := CSUserRequest classHistory.
allUsers := SystemRepository listInstances: userHist.

1 to: userHist size-1 do: [:index |
(userHist at: index) migrateInstances:(allUsers at: index) to: (userHist at: userHist size)].

After some minutes, I get this error:

a Error occurred (error 2501), An operation that needs to acquire the gcLock was not able to get the lock within a reasonable amount of time.

I have no idea how to proceed. I will appreciate some help.

Thank you very much

Sebastián




--

sebastian van lacke | web developer caesar systems | see clearly. decide smarter.

[hidden email] | t: +1.281.598.8790 | t: +54.11.4389.0126 | petrovr.blogspot.com | www.caesarsystems.com 

This message and any attached documents contain information from Caesar Systems LLC that may be confidential/trade secret and/or privileged. If you are not the intended recipient, you may not read, copy, distribute or use this information. If you have received this transmission in error, please notify the sender immediately by telephone or by reply e-mail and then delete this message.

_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass


_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass
Reply | Threaded
Open this post in threaded view
|

[Glass] Fwd: Error migrating instances

Dale Henrichs-3
new mailer and replied to sender instead of list ...

---------- Forwarded message ----------
From: Dale Henrichs <[hidden email]>
Date: Wed, Jan 15, 2014 at 10:08 AM
Subject: Re: [Glass] Error migrating instances
To: James Foster <[hidden email]>


Sebastian,

We've seen this one before[1] and the post describes the workaround that you can use ... 

Dale



On Wed, Jan 15, 2014 at 7:54 AM, James Foster <[hidden email]> wrote:
Hi Sebastián,

I did a search for ‘gcLock’ in the System Admin Guide and found several operations that require and/or hold the lock. In particular, see pages 310-11. Also, you can determine the session holding the GcLock by using the following:

System sessionIdHoldingGcLock

James

On Jan 15, 2014, at 4:40 AM, Sebastian Van Lacke <[hidden email]> wrote:

Hi all,

I'm getting an error while migrating instances. I have added an instance variable to a class, and I trying to migrate the instances by evaluating this code:

| userHist allUsers |
userHist := CSUserRequest classHistory.
allUsers := SystemRepository listInstances: userHist.

1 to: userHist size-1 do: [:index |
(userHist at: index) migrateInstances:(allUsers at: index) to: (userHist at: userHist size)].

After some minutes, I get this error:

a Error occurred (error 2501), An operation that needs to acquire the gcLock was not able to get the lock within a reasonable amount of time.

I have no idea how to proceed. I will appreciate some help.

Thank you very much

Sebastián




--

sebastian van lacke | web developer caesar systems | see clearly. decide smarter.

[hidden email] | t: <a href="tel:%2B1.281.598.8790" value="+12815988790" target="_blank">+1.281.598.8790 | t: <a href="tel:%2B54.11.4389.0126" value="+541143890126" target="_blank">+54.11.4389.0126 | petrovr.blogspot.com | www.caesarsystems.com 

This message and any attached documents contain information from Caesar Systems LLC that may be confidential/trade secret and/or privileged. If you are not the intended recipient, you may not read, copy, distribute or use this information. If you have received this transmission in error, please notify the sender immediately by telephone or by reply e-mail and then delete this message.

_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass


_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass




_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass
Reply | Threaded
Open this post in threaded view
|

Re: [Glass] Fwd: Error migrating instances

Sebastia Van Lacke
James, Dale:

There was a session holding a gcLock, I have stopped this session and executed the migration code again.

I will consider Dale's workaround next time.

Thanks!

Sebastián


On Wed, Jan 15, 2014 at 8:53 PM, Dale Henrichs <[hidden email]> wrote:
new mailer and replied to sender instead of list ...

---------- Forwarded message ----------
From: Dale Henrichs <[hidden email]>
Date: Wed, Jan 15, 2014 at 10:08 AM
Subject: Re: [Glass] Error migrating instances
To: James Foster <[hidden email]>


Sebastian,

We've seen this one before[1] and the post describes the workaround that you can use ... 

Dale



On Wed, Jan 15, 2014 at 7:54 AM, James Foster <[hidden email]> wrote:
Hi Sebastián,

I did a search for ‘gcLock’ in the System Admin Guide and found several operations that require and/or hold the lock. In particular, see pages 310-11. Also, you can determine the session holding the GcLock by using the following:

System sessionIdHoldingGcLock

James

On Jan 15, 2014, at 4:40 AM, Sebastian Van Lacke <[hidden email]> wrote:

Hi all,

I'm getting an error while migrating instances. I have added an instance variable to a class, and I trying to migrate the instances by evaluating this code:

| userHist allUsers |
userHist := CSUserRequest classHistory.
allUsers := SystemRepository listInstances: userHist.

1 to: userHist size-1 do: [:index |
(userHist at: index) migrateInstances:(allUsers at: index) to: (userHist at: userHist size)].

After some minutes, I get this error:

a Error occurred (error 2501), An operation that needs to acquire the gcLock was not able to get the lock within a reasonable amount of time.

I have no idea how to proceed. I will appreciate some help.

Thank you very much

Sebastián




--

sebastian van lacke | web developer caesar systems | see clearly. decide smarter.

[hidden email] | t: <a href="tel:%2B1.281.598.8790" value="+12815988790" target="_blank">+1.281.598.8790 | t: <a href="tel:%2B54.11.4389.0126" value="+541143890126" target="_blank">+54.11.4389.0126 | petrovr.blogspot.com | www.caesarsystems.com 

This message and any attached documents contain information from Caesar Systems LLC that may be confidential/trade secret and/or privileged. If you are not the intended recipient, you may not read, copy, distribute or use this information. If you have received this transmission in error, please notify the sender immediately by telephone or by reply e-mail and then delete this message.

_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass


_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass




_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass




--

sebastian van lacke | web developer caesar systems | see clearly. decide smarter.

[hidden email] | t: +1.281.598.8790 | t: +54.11.4389.0126 | petrovr.blogspot.com | www.caesarsystems.com 

This message and any attached documents contain information from Caesar Systems LLC that may be confidential/trade secret and/or privileged. If you are not the intended recipient, you may not read, copy, distribute or use this information. If you have received this transmission in error, please notify the sender immediately by telephone or by reply e-mail and then delete this message.


_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass
Reply | Threaded
Open this post in threaded view
|

[Glass] storeString bug?

SebastianHC
Hi!

I just tried to store some of my complex UserGLobals in a storeString.

The output looks like this:
(PassiveObject newWithContents: (String new addAll:
'^610^RcIdentityBag(967 /"" ....... '; yourself $) activate

but

(PassiveObject newWithContents: (String new addAll:
'^610^RcIdentityBag(967 /"" ....... '; yourself )) activate

is right.

The difference is "))" instead of "$)" in the end.

Cheers!
Sebastian
_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass
Reply | Threaded
Open this post in threaded view
|

Re: [Glass] storeString bug?

Dale Henrichs-3
Could you provide the expression that you used to produce the output. When I used passivate:

  | str |
  str := WriteStream on: String new.
  PassiveObject passivate: #(1 2 3) toStream: str.
  {(str contents).
  ((PassiveObject newWithContents: str contents) activate)}

I didn't get the same output as you.

Dale


On Thu, Jan 16, 2014 at 12:34 PM, Sebastian Heidbrink <[hidden email]> wrote:
Hi!

I just tried to store some of my complex UserGLobals in a storeString.

The output looks like this:
(PassiveObject newWithContents: (String new addAll: '^610^RcIdentityBag(967 /"" ....... '; yourself $) activate

but

(PassiveObject newWithContents: (String new addAll: '^610^RcIdentityBag(967 /"" ....... '; yourself )) activate

is right.

The difference is "))" instead of "$)" in the end.

Cheers!
Sebastian
_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass


_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass
Reply | Threaded
Open this post in threaded view
|

Re: [Glass] storeString bug?

SebastianHC
Hi Dale,

 just inspect the following snippet and check the last line of the storeString

 | dict |
 
   dict := Dictionary new.
    1 to: 10000 do:[: each | dict at: each asString put: each].
    dict storeString



Sebastian


Am 16.01.2014 14:25, schrieb Dale Henrichs:
Could you provide the expression that you used to produce the output. When I used passivate:

  | str |
  str := WriteStream on: String new.
  PassiveObject passivate: #(1 2 3) toStream: str.
  {(str contents).
  ((PassiveObject newWithContents: str contents) activate)}

I didn't get the same output as you.

Dale


On Thu, Jan 16, 2014 at 12:34 PM, Sebastian Heidbrink <[hidden email]> wrote:
Hi!

I just tried to store some of my complex UserGLobals in a storeString.

The output looks like this:
(PassiveObject newWithContents: (String new addAll: '^610^RcIdentityBag(967 /"" ....... '; yourself $) activate

but

(PassiveObject newWithContents: (String new addAll: '^610^RcIdentityBag(967 /"" ....... '; yourself )) activate

is right.

The difference is "))" instead of "$)" in the end.

Cheers!
Sebastian
_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass



_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass
Reply | Threaded
Open this post in threaded view
|

Re: [Glass] storeString bug?

Dale Henrichs-3
ah ... yes so the comment in Object>>storeOn: has the disclaimer:

"Format the passive description so it can be filed in properly.
 This has to take into account the max literal size restriction in
 GemStone's compiler.  It still may fail if the content string is
 too large or has too many syntactically significant characters in it."

In your case the content string is too large ... I will submit a bug for this, but if you use the passivate/activate messages directly you should be able to avoid the storeOn: bug ..

Thanks for the report,

Dale


On Thu, Jan 16, 2014 at 2:55 PM, Sebastian Heidbrink <[hidden email]> wrote:
Hi Dale,

 just inspect the following snippet and check the last line of the storeString

 | dict |
 
   dict := Dictionary new.
    1 to: 10000 do:[: each | dict at: each asString put: each].
    dict storeString



Sebastian


Am 16.01.2014 14:25, schrieb Dale Henrichs:
Could you provide the expression that you used to produce the output. When I used passivate:

  | str |
  str := WriteStream on: String new.
  PassiveObject passivate: #(1 2 3) toStream: str.
  {(str contents).
  ((PassiveObject newWithContents: str contents) activate)}

I didn't get the same output as you.

Dale


On Thu, Jan 16, 2014 at 12:34 PM, Sebastian Heidbrink <[hidden email]> wrote:
Hi!

I just tried to store some of my complex UserGLobals in a storeString.

The output looks like this:
(PassiveObject newWithContents: (String new addAll: '^610^RcIdentityBag(967 /"" ....... '; yourself $) activate

but

(PassiveObject newWithContents: (String new addAll: '^610^RcIdentityBag(967 /"" ....... '; yourself )) activate

is right.

The difference is "))" instead of "$)" in the end.

Cheers!
Sebastian
_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass




_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass