> ------=_NextPart_000_0096_01C44CD4.09253E70
> Content-Type: text/plain;
> charset="iso-8859-1"
> Content-Transfer-Encoding: quoted-printable
>
> Access violation in VM with HSQLDB 1.7.2 RC 6bThe error
> messages aren't =
> very helpful. It obviously gets thrown on your getString().
> The type of =
> the column in question is not CHAR or VARCHAR, so a conversion takes =
> place. What is the column type? Are you running in-process or =
> client-server? What happens if you use Database Manager and issue a =
> query such as SELECT MAX(COLUMN_IN_QUESTION) FROM ARP ?
>
> Fred
> ----- Original Message -----=20
> From: Stephen Chen=20
> To: '[EMAIL PROTECTED]'=20
> Sent: 07 June 2004 19:43
> Subject: [Hsqldb-developers] Access violation in VM with
> HSQLDB 1.7.2 =
> RC 6b
>
>
> I'm running the test again, but the following code crashed
> with a VM =
> EXCEPTION_ACCESS_VIOLATION:=20
>
> ResultSet r =3D statement.executeQuery("Select * from ARP order by =
> IFPHYSADDRESS");=20
> boolean bContinue =3D r.next();=20
>
> while (bContinue) {=20
> String currentMac =3D r.getString(4);=20
> pw.println("Mac Address " + currentMac + " belongs to " + =
> r.getString(5));=20
>
> do {=20
> pw.println("Seen By: + r.getString(2) + " on Interface " + =
> r.getInt(3));=20
> // ^ This field gets printed to
> the log =
> file, but the rest of the line is incomplete.=20
> bContinue =3D r.next();=20
> }=20
> while (bContinue &&
> currentMac.equalsIgnoreCase(r.getString(4)));=20
> }=20
> r.close();=20
>
> The code runs with a large data file (1.5GB), and I get
> about 8MB of =
> output from the printlns until the crash.=20
> From the source, I don't see anything that would cause this, but =
> perhaps someone else has a better understanding of the code.
>
> Thank you for your time.=20
>
> Stephen Chen, Product Developer=20
> Visionael Corporation=20
>
>
>
> ------=_NextPart_000_0096_01C44CD4.09253E70--
The column in question is a string. The schema is:
create table arp (
id integer identity,
source varchar not null,
ifindex integer not null,
ifphysaddress varchar not null,
addr varchar not null
)
The database is running in client-server mode. The server continues to run while the client had the VM exception.
Using "select max(source) from arp" resulted in a valid string.
I have changed code that runs before this to not run the database so hard (retrieve the entire table for local processing versus query with group by and finding a matching record). This does not recreate the VM exception.
While I don't expect this to reoccur, if anyone else has this happen, this incident might provide some useful data.
Thank you for your assistance.
Stephen Chen, Product Developer
Visionael Corporation