RE: prefetch and autoRetreive
Not at the moment. I figured since it wasn't taken before it would wait until after 1.0. I have frozen my version of OJB because we're rolling the product out next week. Sometime after that I was hoping to update OJB again and make sure the patch still fits in and works well (if I have enough time) as well as get some new OJB features. I sort of had an idea of a way to improve the patch, but I'd have to look at it more carefully. I don't know the guts of OJB as well as some so I'm not sure my approach is necessarily the best. So in short, I really don't have the time right now to get an updated patch. The original patch files I made sometime in August or September are still linked to from my message back then, which would give one an idea of how it worked. John >= Original Message From Jakob Braeuchi <[EMAIL PROTECTED]> = >hi john, > >do you have an up-to-date version of this patch you could post on the list ? > >jakob > >John wrote: >> I figured that would fix it, but I also figured that was in there for a reason >> and I didn't want to change something I didn't completely understand. That's >> mainly why I asked why it had to be that way. >> >> I'm the one that has the patch for deep-prefetching via joins, so I don't >> really care, because that usually works better for me. I just wanted to bring >> the issue up in case anyone else had the same problem. Thanks for the >> comments. >> >> John >> >> >>>= Original Message From Jakob Braeuchi <[EMAIL PROTECTED]> = >>>hi john, >>> >>>have you tried disabling the collection-desriptor tweaking in >>>RelationshipPrefetcherImpl#prepareRelationshipSettings() ? >>> >>>public void prepareRelationshipSettings() >>>{ >>>setCascadeRetrieve(getObjectReferenceDescriptor().getCascadeRetrieve()); >>>getObjectReferenceDescriptor().setCascadeRetrieve(false); // comment it >>>} >>> >>> >>>jakob >>> >>>John wrote: >>> >>>I sensed that, but I'm not sure the penalty for loading an object twice is >> >> is >> >>>bad as the penalty I was getting. A lot of places in our code assume the >>>object reference is loaded on a required relationship. One thread was >>>prefetching and turned off auto-retrieve, then another came in and thought >>>that was the right value and set it back to that. So from then on none of >> >> the >> >>>objects had the relationship loaded and I got NullPointerException >> >> everywhere. >> >>> I suppose that multiple loads could be more of an issue with the global >>>cache, but with cache-per-broker I'm not sure if that's an issue. At least >> >> to >> >>>me double-load isn't as big a deal as the NPE's. I had to discontinue >> >> using >> >>>prefetch in the couple of places I was using it. (Not sure that's the >> >> worst >> >>>thing anyway, since I don't know that it helped a whole lot.) >>> >>>John >>> >>> >>> = Original Message From Jakob Braeuchi <[EMAIL PROTECTED]> = hi john, John wrote: Has there been any solution to this issue (OJB188)? This bit me in the >>> >>>butt, >>> >>> but of course it took quite a bit of digging and debugging to realize this >>> >>>is >>> >>> what was happening. Why exactly is the value changed while prefetching? auto-retrieve is disabled during prefetching of a relationship to avoid loading the same obj multiple times. jakob I have a patched version of OJB that was based on HEAD from the middle of August, so I haven't been able to update for a while (don't want to >>> >>>repatch). >>> >>> It seems that there have been some changes to OJB since then with regards >>> >>>to >>> >>> (proxy) prefetching, autoretrieve, etc, especially in how those are >>> >>>configured >>> >>> in the repository. Are these summarized anywhere? John Marshall Connectria = Date: Fri, 11 Jul 2003 18:19:33 +0200 From: Jakob Braeuchi <[EMAIL PROTECTED]> Subject: Potential problem with prefetch-relationships ? Content-Type: text/plain; charset=ISO-8859-1; format=flowed hi theo, during prefetch auto-retrieve is disabled. when an other thread uses the relationship-desriptor it will find auto-retrive off. this is a known problem but i do not have a solution for it :( jakob Theo Niemeijer wrote: >Hi all, >I seemed to have stumbled on a potential problem with >the "prefetch relationship" option in PB query. > >After using prefetchRelationship for retrieval of big list of results, >and at the same time performing other queries, >I seemed to have lost the "auto-retrieve" attribute on >the collection descriptor. > >The result was that subsequent queries did not >retrieve that collection anymore, probably because the >"auto-retrieve" was disabled. > >The problem is quite hard to reproduce, but my g
RE: prefetch and autoRetreive
Not at the moment. I figured since it wasn't taken before it would wait until after 1.0. I have frozen my version of OJB because we're rolling the product out next week. Sometime after that I was hoping to update OJB again and make sure the patch still fits in and works well (if I have enough time) as well as get some new OJB features. I sort of had an idea of a way to improve the patch, but I'd have to look at it more carefully. I don't know the guts of OJB as well as some so I'm not sure my approach is necessarily the best. So in short, I really don't have the time right now to get an updated patch. The original patch files I made sometime in August or September are still linked to from my message back then, which would give one an idea of how it worked. John >= Original Message From Jakob Braeuchi <[EMAIL PROTECTED]> = >hi john, > >do you have an up-to-date version of this patch you could post on the list ? > >jakob > >John wrote: >> I figured that would fix it, but I also figured that was in there for a reason >> and I didn't want to change something I didn't completely understand. That's >> mainly why I asked why it had to be that way. >> >> I'm the one that has the patch for deep-prefetching via joins, so I don't >> really care, because that usually works better for me. I just wanted to bring >> the issue up in case anyone else had the same problem. Thanks for the >> comments. >> >> John >> >> >>>= Original Message From Jakob Braeuchi <[EMAIL PROTECTED]> = >>>hi john, >>> >>>have you tried disabling the collection-desriptor tweaking in >>>RelationshipPrefetcherImpl#prepareRelationshipSettings() ? >>> >>>public void prepareRelationshipSettings() >>>{ >>>setCascadeRetrieve(getObjectReferenceDescriptor().getCascadeRetrieve()); >>>getObjectReferenceDescriptor().setCascadeRetrieve(false); // comment it >>>} >>> >>> >>>jakob >>> >>>John wrote: >>> >>>I sensed that, but I'm not sure the penalty for loading an object twice is >> >> is >> >>>bad as the penalty I was getting. A lot of places in our code assume the >>>object reference is loaded on a required relationship. One thread was >>>prefetching and turned off auto-retrieve, then another came in and thought >>>that was the right value and set it back to that. So from then on none of >> >> the >> >>>objects had the relationship loaded and I got NullPointerException >> >> everywhere. >> >>> I suppose that multiple loads could be more of an issue with the global >>>cache, but with cache-per-broker I'm not sure if that's an issue. At least >> >> to >> >>>me double-load isn't as big a deal as the NPE's. I had to discontinue >> >> using >> >>>prefetch in the couple of places I was using it. (Not sure that's the >> >> worst >> >>>thing anyway, since I don't know that it helped a whole lot.) >>> >>>John >>> >>> >>> = Original Message From Jakob Braeuchi <[EMAIL PROTECTED]> = hi john, John wrote: Has there been any solution to this issue (OJB188)? This bit me in the >>> >>>butt, >>> >>> but of course it took quite a bit of digging and debugging to realize this >>> >>>is >>> >>> what was happening. Why exactly is the value changed while prefetching? auto-retrieve is disabled during prefetching of a relationship to avoid loading the same obj multiple times. jakob I have a patched version of OJB that was based on HEAD from the middle of August, so I haven't been able to update for a while (don't want to >>> >>>repatch). >>> >>> It seems that there have been some changes to OJB since then with regards >>> >>>to >>> >>> (proxy) prefetching, autoretrieve, etc, especially in how those are >>> >>>configured >>> >>> in the repository. Are these summarized anywhere? John Marshall Connectria = Date: Fri, 11 Jul 2003 18:19:33 +0200 From: Jakob Braeuchi <[EMAIL PROTECTED]> Subject: Potential problem with prefetch-relationships ? Content-Type: text/plain; charset=ISO-8859-1; format=flowed hi theo, during prefetch auto-retrieve is disabled. when an other thread uses the relationship-desriptor it will find auto-retrive off. this is a known problem but i do not have a solution for it :( jakob Theo Niemeijer wrote: >Hi all, >I seemed to have stumbled on a potential problem with >the "prefetch relationship" option in PB query. > >After using prefetchRelationship for retrieval of big list of results, >and at the same time performing other queries, >I seemed to have lost the "auto-retrieve" attribute on >the collection descriptor. > >The result was that subsequent queries did not >retrieve that collection anymore, probably because the >"auto-retrieve" was disabled. > >The problem is quite hard to reproduce, but my g
Re: prefetch and autoRetreive
hi john, do you have an up-to-date version of this patch you could post on the list ? jakob John wrote: I figured that would fix it, but I also figured that was in there for a reason and I didn't want to change something I didn't completely understand. That's mainly why I asked why it had to be that way. I'm the one that has the patch for deep-prefetching via joins, so I don't really care, because that usually works better for me. I just wanted to bring the issue up in case anyone else had the same problem. Thanks for the comments. John = Original Message From Jakob Braeuchi <[EMAIL PROTECTED]> = hi john, have you tried disabling the collection-desriptor tweaking in RelationshipPrefetcherImpl#prepareRelationshipSettings() ? public void prepareRelationshipSettings() { setCascadeRetrieve(getObjectReferenceDescriptor().getCascadeRetrieve()); getObjectReferenceDescriptor().setCascadeRetrieve(false); // comment it } jakob John wrote: I sensed that, but I'm not sure the penalty for loading an object twice is is bad as the penalty I was getting. A lot of places in our code assume the object reference is loaded on a required relationship. One thread was prefetching and turned off auto-retrieve, then another came in and thought that was the right value and set it back to that. So from then on none of the objects had the relationship loaded and I got NullPointerException everywhere. I suppose that multiple loads could be more of an issue with the global cache, but with cache-per-broker I'm not sure if that's an issue. At least to me double-load isn't as big a deal as the NPE's. I had to discontinue using prefetch in the couple of places I was using it. (Not sure that's the worst thing anyway, since I don't know that it helped a whole lot.) John = Original Message From Jakob Braeuchi <[EMAIL PROTECTED]> = hi john, John wrote: Has there been any solution to this issue (OJB188)? This bit me in the butt, but of course it took quite a bit of digging and debugging to realize this is what was happening. Why exactly is the value changed while prefetching? auto-retrieve is disabled during prefetching of a relationship to avoid loading the same obj multiple times. jakob I have a patched version of OJB that was based on HEAD from the middle of August, so I haven't been able to update for a while (don't want to repatch). It seems that there have been some changes to OJB since then with regards to (proxy) prefetching, autoretrieve, etc, especially in how those are configured in the repository. Are these summarized anywhere? John Marshall Connectria = Date: Fri, 11 Jul 2003 18:19:33 +0200 From: Jakob Braeuchi <[EMAIL PROTECTED]> Subject: Potential problem with prefetch-relationships ? Content-Type: text/plain; charset=ISO-8859-1; format=flowed hi theo, during prefetch auto-retrieve is disabled. when an other thread uses the relationship-desriptor it will find auto-retrive off. this is a known problem but i do not have a solution for it :( jakob Theo Niemeijer wrote: Hi all, I seemed to have stumbled on a potential problem with the "prefetch relationship" option in PB query. After using prefetchRelationship for retrieval of big list of results, and at the same time performing other queries, I seemed to have lost the "auto-retrieve" attribute on the collection descriptor. The result was that subsequent queries did not retrieve that collection anymore, probably because the "auto-retrieve" was disabled. The problem is quite hard to reproduce, but my guess is that different threads modified the repository descriptor in the wrong sequence, by means of the setCascadeRetrieve method used in prepareRelationshipSettings. I might be wrong, because I simply do not oversee all aspects of OJB. But am I right to view this as a potential problem in "concurrency situations" like websites ? I do not feel too comfortable that OJB makes these "temporary" changes to the repository model. Cheers, Theo Niemeijer - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL
RE: prefetch and autoRetreive
I figured that would fix it, but I also figured that was in there for a reason and I didn't want to change something I didn't completely understand. That's mainly why I asked why it had to be that way. I'm the one that has the patch for deep-prefetching via joins, so I don't really care, because that usually works better for me. I just wanted to bring the issue up in case anyone else had the same problem. Thanks for the comments. John >= Original Message From Jakob Braeuchi <[EMAIL PROTECTED]> = >hi john, > >have you tried disabling the collection-desriptor tweaking in >RelationshipPrefetcherImpl#prepareRelationshipSettings() ? > >public void prepareRelationshipSettings() >{ >setCascadeRetrieve(getObjectReferenceDescriptor().getCascadeRetrieve()); >getObjectReferenceDescriptor().setCascadeRetrieve(false); // comment it >} > > >jakob > >John wrote: >> I sensed that, but I'm not sure the penalty for loading an object twice is is >> bad as the penalty I was getting. A lot of places in our code assume the >> object reference is loaded on a required relationship. One thread was >> prefetching and turned off auto-retrieve, then another came in and thought >> that was the right value and set it back to that. So from then on none of the >> objects had the relationship loaded and I got NullPointerException everywhere. >> I suppose that multiple loads could be more of an issue with the global >> cache, but with cache-per-broker I'm not sure if that's an issue. At least to >> me double-load isn't as big a deal as the NPE's. I had to discontinue using >> prefetch in the couple of places I was using it. (Not sure that's the worst >> thing anyway, since I don't know that it helped a whole lot.) >> >> John >> >> >>>= Original Message From Jakob Braeuchi <[EMAIL PROTECTED]> = >>>hi john, >>> >>> >>>John wrote: >>> >>> >>>Has there been any solution to this issue (OJB188)? This bit me in the >> >> butt, >> >>>but of course it took quite a bit of digging and debugging to realize this >> >> is >> >>>what was happening. Why exactly is the value changed while prefetching? >>> >>> >>>auto-retrieve is disabled during prefetching of a relationship to avoid >>>loading the same obj multiple times. >>> >>>jakob >>> >>> >>>I have a patched version of OJB that was based on HEAD from the middle of >>>August, so I haven't been able to update for a while (don't want to >> >> repatch). >> >>>It seems that there have been some changes to OJB since then with regards >> >> to >> >>>(proxy) prefetching, autoretrieve, etc, especially in how those are >> >> configured >> >>>in the repository. Are these summarized anywhere? >>> >>>John Marshall >>>Connectria >>> >>> >>>= >>>Date: Fri, 11 Jul 2003 18:19:33 +0200 >>>From: Jakob Braeuchi <[EMAIL PROTECTED]> >>>Subject: Potential problem with prefetch-relationships ? >>>Content-Type: text/plain; charset=ISO-8859-1; format=flowed >>> >>> >>>hi theo, >>> >>>during prefetch auto-retrieve is disabled. when an other thread uses the >>>relationship-desriptor it will find auto-retrive off. >>>this is a known problem but i do not have a solution for it :( >>> >>> >>>jakob >>> >>>Theo Niemeijer wrote: >>> >>> >>> Hi all, I seemed to have stumbled on a potential problem with the "prefetch relationship" option in PB query. After using prefetchRelationship for retrieval of big list of results, and at the same time performing other queries, I seemed to have lost the "auto-retrieve" attribute on the collection descriptor. The result was that subsequent queries did not retrieve that collection anymore, probably because the "auto-retrieve" was disabled. The problem is quite hard to reproduce, but my guess is that different threads modified the repository descriptor in the wrong sequence, by means of the setCascadeRetrieve method used in prepareRelationshipSettings. I might be wrong, because I simply do not oversee all aspects of OJB. But am I right to view this as a potential problem in "concurrency situations" like websites ? I do not feel too comfortable that OJB makes these "temporary" changes to the repository model. Cheers, Theo Niemeijer >>> >>> >>> >>>- >>>To unsubscribe, e-mail: [EMAIL PROTECTED] >>>For additional commands, e-mail: [EMAIL PROTECTED] >>> >>> >>> >>> >>>- >>>To unsubscribe, e-mail: [EMAIL PROTECTED] >>>For additional commands, e-mail: [EMAIL PROTECTED] >> >> >> >> - >> To unsubscribe, e-mail: [EMAIL PROTECTED] >> For additional commands, e-mail: [EMAIL PROTECTED] >> >> > > >- >To unsubscribe, e-mail: [EMAIL PROTECTED] >For addit
Re: prefetch and autoRetreive
hi john, have you tried disabling the collection-desriptor tweaking in RelationshipPrefetcherImpl#prepareRelationshipSettings() ? public void prepareRelationshipSettings() { setCascadeRetrieve(getObjectReferenceDescriptor().getCascadeRetrieve()); getObjectReferenceDescriptor().setCascadeRetrieve(false); // comment it } jakob John wrote: I sensed that, but I'm not sure the penalty for loading an object twice is is bad as the penalty I was getting. A lot of places in our code assume the object reference is loaded on a required relationship. One thread was prefetching and turned off auto-retrieve, then another came in and thought that was the right value and set it back to that. So from then on none of the objects had the relationship loaded and I got NullPointerException everywhere. I suppose that multiple loads could be more of an issue with the global cache, but with cache-per-broker I'm not sure if that's an issue. At least to me double-load isn't as big a deal as the NPE's. I had to discontinue using prefetch in the couple of places I was using it. (Not sure that's the worst thing anyway, since I don't know that it helped a whole lot.) John = Original Message From Jakob Braeuchi <[EMAIL PROTECTED]> = hi john, John wrote: Has there been any solution to this issue (OJB188)? This bit me in the butt, but of course it took quite a bit of digging and debugging to realize this is what was happening. Why exactly is the value changed while prefetching? auto-retrieve is disabled during prefetching of a relationship to avoid loading the same obj multiple times. jakob I have a patched version of OJB that was based on HEAD from the middle of August, so I haven't been able to update for a while (don't want to repatch). It seems that there have been some changes to OJB since then with regards to (proxy) prefetching, autoretrieve, etc, especially in how those are configured in the repository. Are these summarized anywhere? John Marshall Connectria = Date: Fri, 11 Jul 2003 18:19:33 +0200 From: Jakob Braeuchi <[EMAIL PROTECTED]> Subject: Potential problem with prefetch-relationships ? Content-Type: text/plain; charset=ISO-8859-1; format=flowed hi theo, during prefetch auto-retrieve is disabled. when an other thread uses the relationship-desriptor it will find auto-retrive off. this is a known problem but i do not have a solution for it :( jakob Theo Niemeijer wrote: Hi all, I seemed to have stumbled on a potential problem with the "prefetch relationship" option in PB query. After using prefetchRelationship for retrieval of big list of results, and at the same time performing other queries, I seemed to have lost the "auto-retrieve" attribute on the collection descriptor. The result was that subsequent queries did not retrieve that collection anymore, probably because the "auto-retrieve" was disabled. The problem is quite hard to reproduce, but my guess is that different threads modified the repository descriptor in the wrong sequence, by means of the setCascadeRetrieve method used in prepareRelationshipSettings. I might be wrong, because I simply do not oversee all aspects of OJB. But am I right to view this as a potential problem in "concurrency situations" like websites ? I do not feel too comfortable that OJB makes these "temporary" changes to the repository model. Cheers, Theo Niemeijer - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: prefetch and autoRetreive
I sensed that, but I'm not sure the penalty for loading an object twice is is bad as the penalty I was getting. A lot of places in our code assume the object reference is loaded on a required relationship. One thread was prefetching and turned off auto-retrieve, then another came in and thought that was the right value and set it back to that. So from then on none of the objects had the relationship loaded and I got NullPointerException everywhere. I suppose that multiple loads could be more of an issue with the global cache, but with cache-per-broker I'm not sure if that's an issue. At least to me double-load isn't as big a deal as the NPE's. I had to discontinue using prefetch in the couple of places I was using it. (Not sure that's the worst thing anyway, since I don't know that it helped a whole lot.) John >= Original Message From Jakob Braeuchi <[EMAIL PROTECTED]> = >hi john, > > >John wrote: > >> Has there been any solution to this issue (OJB188)? This bit me in the butt, >> but of course it took quite a bit of digging and debugging to realize this is >> what was happening. Why exactly is the value changed while prefetching? >> > >auto-retrieve is disabled during prefetching of a relationship to avoid >loading the same obj multiple times. > >jakob > >> I have a patched version of OJB that was based on HEAD from the middle of >> August, so I haven't been able to update for a while (don't want to repatch). >> It seems that there have been some changes to OJB since then with regards to >> (proxy) prefetching, autoretrieve, etc, especially in how those are configured >> in the repository. Are these summarized anywhere? >> >> John Marshall >> Connectria >> >> >> = >> Date: Fri, 11 Jul 2003 18:19:33 +0200 >> From: Jakob Braeuchi <[EMAIL PROTECTED]> >> Subject: Potential problem with prefetch-relationships ? >> Content-Type: text/plain; charset=ISO-8859-1; format=flowed >> >> >> hi theo, >> >> during prefetch auto-retrieve is disabled. when an other thread uses the >> relationship-desriptor it will find auto-retrive off. >> this is a known problem but i do not have a solution for it :( >> >> >> jakob >> >> Theo Niemeijer wrote: >> >> >>>Hi all, >>>I seemed to have stumbled on a potential problem with >>>the "prefetch relationship" option in PB query. >>> >>>After using prefetchRelationship for retrieval of big list of results, >>>and at the same time performing other queries, >>>I seemed to have lost the "auto-retrieve" attribute on >>>the collection descriptor. >>> >>>The result was that subsequent queries did not >>>retrieve that collection anymore, probably because the >>>"auto-retrieve" was disabled. >>> >>>The problem is quite hard to reproduce, but my guess is >>>that different threads modified the repository descriptor >>>in the wrong sequence, by means of the setCascadeRetrieve >>>method used in prepareRelationshipSettings. >>> >>>I might be wrong, because I simply do not oversee all aspects >>>of OJB. But am I right to view this as a potential problem >>>in "concurrency situations" like websites ? >>>I do not feel too comfortable that OJB makes these "temporary" >>>changes to the repository model. >>> >>>Cheers, >>> Theo Niemeijer - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: prefetch and autoRetreive
I sensed that, but I'm not sure the penalty for loading an object twice is is bad as the penalty I was getting. A lot of places in our code assume the object reference is loaded on a required relationship. One thread was prefetching and turned off auto-retrieve, then another came in and thought that was the right value and set it back to that. So from then on none of the objects had the relationship loaded and I got NullPointerException everywhere. I suppose that multiple loads could be more of an issue with the global cache, but with cache-per-broker I'm not sure if that's an issue. At least to me double-load isn't as big a deal as the NPE's. I had to discontinue using prefetch in the couple of places I was using it. (Not sure that's the worst thing anyway, since I don't know that it helped a whole lot.) John >= Original Message From Jakob Braeuchi <[EMAIL PROTECTED]> = >hi john, > > >John wrote: > >> Has there been any solution to this issue (OJB188)? This bit me in the butt, >> but of course it took quite a bit of digging and debugging to realize this is >> what was happening. Why exactly is the value changed while prefetching? >> > >auto-retrieve is disabled during prefetching of a relationship to avoid >loading the same obj multiple times. > >jakob > >> I have a patched version of OJB that was based on HEAD from the middle of >> August, so I haven't been able to update for a while (don't want to repatch). >> It seems that there have been some changes to OJB since then with regards to >> (proxy) prefetching, autoretrieve, etc, especially in how those are configured >> in the repository. Are these summarized anywhere? >> >> John Marshall >> Connectria >> >> >> = >> Date: Fri, 11 Jul 2003 18:19:33 +0200 >> From: Jakob Braeuchi <[EMAIL PROTECTED]> >> Subject: Potential problem with prefetch-relationships ? >> Content-Type: text/plain; charset=ISO-8859-1; format=flowed >> >> >> hi theo, >> >> during prefetch auto-retrieve is disabled. when an other thread uses the >> relationship-desriptor it will find auto-retrive off. >> this is a known problem but i do not have a solution for it :( >> >> >> jakob >> >> Theo Niemeijer wrote: >> >> >>>Hi all, >>>I seemed to have stumbled on a potential problem with >>>the "prefetch relationship" option in PB query. >>> >>>After using prefetchRelationship for retrieval of big list of results, >>>and at the same time performing other queries, >>>I seemed to have lost the "auto-retrieve" attribute on >>>the collection descriptor. >>> >>>The result was that subsequent queries did not >>>retrieve that collection anymore, probably because the >>>"auto-retrieve" was disabled. >>> >>>The problem is quite hard to reproduce, but my guess is >>>that different threads modified the repository descriptor >>>in the wrong sequence, by means of the setCascadeRetrieve >>>method used in prepareRelationshipSettings. >>> >>>I might be wrong, because I simply do not oversee all aspects >>>of OJB. But am I right to view this as a potential problem >>>in "concurrency situations" like websites ? >>>I do not feel too comfortable that OJB makes these "temporary" >>>changes to the repository model. >>> >>>Cheers, >>> Theo Niemeijer >> >> >> >> - >> To unsubscribe, e-mail: [EMAIL PROTECTED] >> For additional commands, e-mail: [EMAIL PROTECTED] >> >> > > >- >To unsubscribe, e-mail: [EMAIL PROTECTED] >For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: prefetch and autoRetreive
hi john, John wrote: Has there been any solution to this issue (OJB188)? This bit me in the butt, but of course it took quite a bit of digging and debugging to realize this is what was happening. Why exactly is the value changed while prefetching? auto-retrieve is disabled during prefetching of a relationship to avoid loading the same obj multiple times. jakob I have a patched version of OJB that was based on HEAD from the middle of August, so I haven't been able to update for a while (don't want to repatch). It seems that there have been some changes to OJB since then with regards to (proxy) prefetching, autoretrieve, etc, especially in how those are configured in the repository. Are these summarized anywhere? John Marshall Connectria = Date: Fri, 11 Jul 2003 18:19:33 +0200 From: Jakob Braeuchi <[EMAIL PROTECTED]> Subject: Potential problem with prefetch-relationships ? Content-Type: text/plain; charset=ISO-8859-1; format=flowed hi theo, during prefetch auto-retrieve is disabled. when an other thread uses the relationship-desriptor it will find auto-retrive off. this is a known problem but i do not have a solution for it :( jakob Theo Niemeijer wrote: Hi all, I seemed to have stumbled on a potential problem with the "prefetch relationship" option in PB query. After using prefetchRelationship for retrieval of big list of results, and at the same time performing other queries, I seemed to have lost the "auto-retrieve" attribute on the collection descriptor. The result was that subsequent queries did not retrieve that collection anymore, probably because the "auto-retrieve" was disabled. The problem is quite hard to reproduce, but my guess is that different threads modified the repository descriptor in the wrong sequence, by means of the setCascadeRetrieve method used in prepareRelationshipSettings. I might be wrong, because I simply do not oversee all aspects of OJB. But am I right to view this as a potential problem in "concurrency situations" like websites ? I do not feel too comfortable that OJB makes these "temporary" changes to the repository model. Cheers, Theo Niemeijer - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]