Title: Re: Access violation in VM with HSQLDB 1.7.2 RC 6b

> ------=_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

Reply via email to