Using the same function, in a more complex sql statement, I receive the error
General error;-602 System error: Move error.

The query is the following. The function is used only in first subquery

SELECT
    (SELECT pportaL.TO_CHAR2(Max(TO_NUMBER(K_KEY) +1)) FROM REGISTRY_TREE),
    'appoin57',
    '30',
    TRUNC(SYSDATE),
    SYSDATE,
    'su',
    '',
    (SELECT DECODE('30',null,'/' || d.topolino || '/',c.paperino)
        from REGISTRY_TREE b
        cross join 
        (SELECT Max(TO_NUMBER(K_KEY) +1) topolino FROM REGISTRY_TREE) d 
        LEFT JOIN
        (SELECT NVL(rtrim(C_TREE_PATH) || rtrim(pippo.pluto) || '/','/' || 
rtrim(pippo.pluto) || '/') paperino, a.K_KEY 
            FROM REGISTRY_TREE a
            CROSS JOIN 
            (SELECT Max(TO_NUMBER(K_KEY) +1) pluto FROM REGISTRY_TREE) pippo 
            WHERE a.K_KEY='30') c
            ON b.K_KEY = c.K_key
        where b.K_KEY='30')
    FROM DUAL
    WHERE NOT EXISTS (SELECT 1
                                        FROM REGISTRY_TREE
                                        WHERE
                                        NVL(D_END,TRUNC(SYSDATE+1))>TRUNC(SYSDATE)
                                        AND D_START<=TRUNC(SYSDATE)
                                        AND N_NODE = 'appoin57'
                                        AND (E_REG_TREE_K_KEY = '30')
                                    )

----- Original Message ----- 
From: "Matteo Gattoni" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Wednesday, June 16, 2004 3:22 PM
Subject: Calling a function the db crashes


Hello,
 I'm using MaxDb version 7.5.01.00.
I have a function TO_CHAR2 owned by user PPORTAL that receives a float and give me 
back a char value.

The function is created like this in Oracle mode (the grant in Internal mode because 
they don't work in oracle mode)

DROP FUNCTION TO_CHAR2
//
CREATE FUNCTION TO_CHAR2(VAL FLOAT) RETURNS VARCHAR AS
BEGIN
    RETURN TO_CHAR(FLOOR(VAL));
END;
//

GRANT EXECUTE ON PPORTAL.TO_CHAR2 TO PSF
//
GRANT EXECUTE ON PPORTAL.TO_CHAR2 TO PPORTAL_PERMISSION
//


Calling it in this way
SELECT PPORTAL.TO_CHAR2(Max(TO_NUMBER(K_KEY) +1)) pluto FROM REGISTRY_TREE

the database crashes everytime.

Note that writing this (swapping the call of the TO_CHAR2 function with max), 

SELECT Max(PPORTAL.TO_CHAR2(TO_NUMBER(K_KEY) +1)) pluto FROM REGISTRY_TREE

it doesn't happened (but the result isn't what I need).

In the database error log I've found only rows like this
2004-06-16 15:08:16 32057 ERR 54111 MOVE VAK05.4: 32768[32552]->1[8192000] len:0

What's wrong with it?

Reply via email to