I
ian_jacobsen
First let me start by saying that this problem is not consistently
reproducible. I have a windows service that creates reports for a
group of entities. This service can process multiple groups at a
single time, where each group is running in a separate thread. I have
noticed mixed behavior when running multiple groups at one time (in
separate threads). I have received the following two messages logged
as errors.
- A Crystal Reports job was delayed 2 second waiting for a free license
to become available. More licenses can be purchased direct from Crystal
Decisions or through the Crystal Decisions Online Store.
- A Crystal Reports job failed because a free license could not be
obtained in the time allocated. More licenses can be purchased direct
from Crystal Decisions or through the Crystal Decisions Online Store.
This is unique to running multiple threads simultaneously, and does not
occur if one group is processed followed by the next group in
sequential order. In addition, this does not occur every time that I
run the test.
My thought is that there is one license that is being passed around and
that only a single thread can have it at any given time. For example
if I have 4 threads that are running, and producing reports. The first
obtains the license, does its job, and drops the license. Now the
second (or any other for that matter) obtains the license, does its
job, and drops the license. However since these all threads could
potentially be requesting the license at a single point in time, this
could cause an undesired affect. If thread 1 obtains the license, and
thread 2 is waiting for it. As thread 1 releases the license, thread 3
obtains it, thread 2 is still left waiting. A few more cycles like
this, and all of a sudden thread 2 will timeout. Am I wrong in
thinking that there might be a race condition with the license and
multiple threads? Is Crystal Reports thread safe?
I'm using the Crystal Reports that is integrated with Visual Studio
2003, find the versions below.
Microsoft Development Environment 2003 Version 7.1.3088
Microsoft .NET Framework 1.1 Version 1.1.4322 SP1
Crystal Reports for Visual Studio .NET AAP50-GS00000-U7000RN
Any thoughts?
--ian
reproducible. I have a windows service that creates reports for a
group of entities. This service can process multiple groups at a
single time, where each group is running in a separate thread. I have
noticed mixed behavior when running multiple groups at one time (in
separate threads). I have received the following two messages logged
as errors.
- A Crystal Reports job was delayed 2 second waiting for a free license
to become available. More licenses can be purchased direct from Crystal
Decisions or through the Crystal Decisions Online Store.
- A Crystal Reports job failed because a free license could not be
obtained in the time allocated. More licenses can be purchased direct
from Crystal Decisions or through the Crystal Decisions Online Store.
This is unique to running multiple threads simultaneously, and does not
occur if one group is processed followed by the next group in
sequential order. In addition, this does not occur every time that I
run the test.
My thought is that there is one license that is being passed around and
that only a single thread can have it at any given time. For example
if I have 4 threads that are running, and producing reports. The first
obtains the license, does its job, and drops the license. Now the
second (or any other for that matter) obtains the license, does its
job, and drops the license. However since these all threads could
potentially be requesting the license at a single point in time, this
could cause an undesired affect. If thread 1 obtains the license, and
thread 2 is waiting for it. As thread 1 releases the license, thread 3
obtains it, thread 2 is still left waiting. A few more cycles like
this, and all of a sudden thread 2 will timeout. Am I wrong in
thinking that there might be a race condition with the license and
multiple threads? Is Crystal Reports thread safe?
I'm using the Crystal Reports that is integrated with Visual Studio
2003, find the versions below.
Microsoft Development Environment 2003 Version 7.1.3088
Microsoft .NET Framework 1.1 Version 1.1.4322 SP1
Crystal Reports for Visual Studio .NET AAP50-GS00000-U7000RN
Any thoughts?
--ian