[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference orarep::nomahs::sql_services

Title:SQL/Services Forum
Notice:kits(3) ft info(7) QAR access (8) SPR access (10)
Moderator:SQLSRV::MAVRIS
Created:Thu Oct 13 1988
Last Modified:Fri Jun 06 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:2214
Total number of notes:8586

2159.0. "6.1 Server bugcheck, ACCVIO in Excel" by ORAREP::ELIS::EIJKHOUT () Tue Mar 04 1997 14:42

Hi,

Since we upgraded to RDB 6.1-4 one of our users is experiencing the 
following problem:
he has an Excel macro with the following SQL statement:
	
SELECT SHIP_ORDER.QUARTER_SHIPPED,
	SHIP_ORDER.BUSINESS,
	SHIP_ORDER.SOLD_TO_CUSTOMER,
	SUM(SHIP_ORDER.TOTAL_VALUE,THIS_SHIPMENT),
FROM SHIP_ORDER SHIP_ORDER
GROUP BY SHIP_ORDER.QUARTER_SHIPPED,
	SHIP_ORDER.BUSINESS,
	SHIP_ORDER.SOLD_TO_CUSTOMER_COUNTRY,
	SHIP_ORDER.YEAR_SHIPPED
HAVING (SHIP_ORDER.BOOKING_CODE = '515') AND
	(SHIP_ORDER.QUARTER_SHIPPED = 'Q3') AND
	(SHIP_ORDER.YEAR_SHIPPED = 'FY97');

When this query is executed, the following error occurs:
"%SYSTEM-F-ACCVION access violation, reason maks=04, virtual address =
00000094, PC=00295864, PSL=03C00000"
Also, a large RDSBUGCHK.DMP file is generated by sys$system:sqlsrv$exe.

If I enter the same query in Interactive SQL however, I get the error:
"%SQL-F-NOTGROFLD, Column BOOKING_CODE cannot be referred to in the select list, 
ORDER BY, or HAVING clause because it is not in the GROUP BY clause"

As soon as I replace (both in Excel and Interactive SQL) the HAVING clause
by a WHERE clause, the problem is gone.

Does anyone know why SQL is generating a bugcheck dump in this case?

regards,
Marga


T.RTitleUserPersonal
Name
DateLines
2159.1M5::JHAYTERTue Mar 04 1997 21:5916
>Does anyone know why SQL is generating a bugcheck dump in this case?

my guess is the "dynamic sql parser" wherever that magic takes place, is
not catching the syntax error.  Builds some kind of "executable" and passes
it on to rdb.  Rdb expecting valid syntax ends up bugchecking.

If it worked before, I would consider that a bug as much as this is one.
You should (have) been getting somekind of syntax error message.

Check out the sql ref. manual on the HAVING predicate - that will shed
light on why it is invalid syntax and why changing to WHERE fixes the
problem.

If the problem exists with Rdb 6.1-1 please elevate.

Jerry
2159.2ORAREP::HERON::GODFRINDOracle Rdb EngineeringWed Mar 05 1997 06:0915
>When this query is executed, the following error occurs:
>"%SYSTEM-F-ACCVION access violation, reason maks=04, virtual address =
>00000094, PC=00295864, PSL=03C00000"
>Also, a large RDSBUGCHK.DMP file is generated by sys$system:sqlsrv$exe.

Can you also post the name of the routine where the exception happens (in the
bugcheck dump, it is the line starting with the string "*** exception" and is
followed by the exception proper. 

Just do a SEARCH RDSBUGCHK.DMP exception/wind=(5,10)

The syntax is definitely incorrect as pointed out (the HAVING clause can only
refer to columns in the GROUP BY or SELECT clauses).

/albert
2159.3Problem is gone!ORAREP::ELIS::EIJKHOUTMon Apr 07 1997 06:106
    
    The problem seems to have disappeared, so this is no longer an issue.
    
    Thanks for you effort,
    Marga