"not a variable" while debogging..

serelay

Member
Hi all,
This is my info ;

PL/SQL Developer
Version 9.0.2.1621
01.421632 - Unlimited user license
Windows 7 (64-bit) 6.1 Build 7601 (Service Pack 1)

Physical memory : 4.054.136 kB (1.275.792 available)
Paging file : 4.194.304 kB (3.867.372 available)
Virtual memory : 2.097.024 kB (1.710.352 available)

Parameters
C:\Program Files\PLSQL Developer902\plsqldev.exe

Preferences
Session mode: Multi
OCI Library:
Use OCI7: False
Allow Multiple Connections: False

Preference Files
C:\Users\sergul\AppData\Roaming\PLSQL Developer\Preferences\default\Default.ini
C:\Users\sergul\AppData\Roaming\PLSQL Developer\Preferences\sergul\default.ini

Plug-Ins
*PL/SQL Documentation (plsqldoc) (C:\Program Files\PLSQL Developer902\PlugIns\plsqldoc.dll)
*Red Gate Deployment Plug-In (C:\Program Files\PLSQL Developer902\PlugIns\RedGate.dll)
*Version Control Interface 1.2 (C:\Program Files\PLSQL Developer902\PlugIns\VCS.dll)
(* is Active)

Aliases
ACE
ACE_L
AVIVA_VZX
AVIVATEST
BEHTCON
...

Homes
OraClient11g_home1 (C:\oracle)

DLLs
C:\oracle\bin\oci.dll

TNS File
C:\oracle\Network\Admin\tnsnames.ora

Using
Home: OraClient11g_home1
DLL: C:\oracle\bin\oci.dll
OCI: version 11.1
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0

Character Sets
Character size: 1 byte(s)
CharSetID: 39
NCharSetID: 2000
Unicode Support: True
NLS_LANG: TURKISH_TURKEY.TR8MSWIN1254
NLS_CHARACTERSET: WE8ISO8859P9
NLS_NCHAR_CHARACTERSET: AL16UTF16

While debugging a procedure in a package, coming over a variable, shows "not a variable".
 
Hello serelay, have you tried to rightclick on the package and choose "Add debug information"? Of what type is the variable (parameter, local variable, record, array, public/private etc.)?
 
yes i did. Also "Add debug information when compilig" parameter is checked. This is seriously suffering staff to debug. We have to code every variable or parameter with dbms_output.

 
best guess:
package is too large vs the amount of ram allocated to Oracle. package compiles OK but there's not enough room to add all the debug info. can only step through code but inspecting any variable does not work.

does this sound familiar? try debugging a smaller package and see if things work

solutions???
- allocate more ram to oracle.
- split package into smaller packages
 
i tried a smaller package. but it is same. it shows "not a variable".
Maybe the problem is my version, downloaded the last release, nothing changed. :(
 
Maybe "archer" is into something about the size of the package. I have experienced that there are two things that can make a package too big for Oracle to handle. The one thing, as archer has stated, is size. The other thing is the actual number of package variables, constants, types, methods etc. (private and public). If this number becomes too large, it can also inflict on how well Oracle can compile and debug the package.

"serelay", can you please tell us the number of public (package header) and private (package body) variables, constants, types, functions, procedures etc. your package have, respectively. Also, what types of parameters are your package methods typically called with (type of parameters, number of parameters, function/procedure, number of in, out, and in/out parameters etc.)
 
Hi,

I have exactly the same problem in 2-3 packages (and I've added debug information in my packages). The size of the package is "reasonnable": about 2700 lines and 50 procedures.

@Marco: I could send you a debug.txt file, but I need a email address for that. I cannot post it on Internet.

Thanks,

Laurent
 
This is an issue for us as well, when we go into debugger and hover over a variable (any type, varchar2, number, date) it will say 'Not a Variable'.

Any solutions discovered? Thanks, Kate.

Windows7 64bit

PL/SQL Developer
Version 10.0.4.1708
09.22789 - Unlimited user license
Windows 7 (64-bit) 6.1 Build 7601 (Service Pack 1)

Physical memory : 4,194,304 kB (4,136,120 available)
Paging file : 4,194,304 kB (4,194,304 available)
Virtual memory : 2,097,024 kB (1,773,888 available)

Parameters
C:\Program Files (x86)\PLSQL Developer\plsqldev.exe
NOAUTOLOGON
NOAUTOLOGON
NOAUTOLOGON

Preferences
Session mode: Multi
OCI Library:
Use OCI7: False
Allow Multiple Connections: False

Preference Files
C:\Program Files (x86)\PLSQL Developer\Preferences\Default\Default.ini
C:\Users\johnsoka\AppData\Roaming\PLSQL Developer\Preferences\johnsoka\default.ini

Plug-Ins
*Active Query Builder (C:\Program Files (x86)\PLSQL Developer\PlugIns\ActiveQueryBuilder.dll)
*PL/SQL Documentation (plsqldoc) (C:\Program Files (x86)\PLSQL Developer\PlugIns\plsqldoc.dll)
*Red Gate Deployment Plug-In (C:\Program Files (x86)\PLSQL Developer\PlugIns\RedGate.dll)
*Version Control Interface 1.2 (C:\Program Files (x86)\PLSQL Developer\PlugIns\VCS.dll)
(* is Active)

Aliases
d01
d02
d03
d04
d05
...

Homes
OraClient10g_home1 (C:\devsuitehome_1)
OraClient11g_home1 (C:\oracle\product\11.2.0\client_1)

DLLs
C:\oracle\product\11.2.0\client_1\bin\oci.dll

TNS File
C:\oracle\product\11.2.0\client_1\Network\Admin\tnsnames.ora

Using
Home: OraClient11g_home1
DLL: C:\oracle\product\11.2.0\client_1\bin\oci.dll
OCI: version 11.1
Oracle9i Enterprise Edition Release 9.2.0.8.0

Character Sets
Character size: 3 byte(s)
CharSetID: 871
NCharSetID: 871
Unicode Support: True
NLS_LANG: AMERICAN_AMERICA.WE8MSWIN1252
NLS_CHARACTERSET: UTF8
NLS_NCHAR_CHARACTERSET: UTF8
 
Last edited:
I sometime experience problems like this, but not on a regular basis.
I have compared your Oracle info with mine. The only major differences are the plugins (I have no plugins) and the character set settings: I have a size of 1 byte and NLS_CHARACTERSET: WE8MSWIN1252 (and not UTF8) and my NLS_NCHAR_CHARACTERSET is AL16UTF16 (not UTF8).
Otherwise Oracle database and Windows OS versions are the same.
My PLD version is 10.0.5

Try to disable all plugins and maybe change the character set to see if it helps.

I have noticed, that you have PLD installed in the directory C:\Program Files (x86)\PLSQL Developer\...
Try to install it in C:\Program Files\PLSQL Developer\...
(without paranthesis). Some 32 bit programs (e.g. some of the SQL*Net versions) get confused when there is a paranthesis in the path.

Try executing the selects below (some of the same as PLD uses to determine the support info). Then try to 'mime' these settings on your session and optionally on your database (if possible) and see if it helps. Other than that, I have no suggestions.

select * from v$version

I get the results:
Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - Production
PL/SQL Release 11.2.0.2.0 - Production
CORE 11.2.0.2.0 Production
TNS for 32-bit Windows: Version 11.2.0.2.0 - Production
NLSRTL Version 11.2.0.2.0 - Production

select * from nls_instance_parameters

I get the results:
NLS_LANGUAGE AMERICAN
NLS_TERRITORY AMERICA
NLS_COMP BINARY
NLS_LENGTH_SEMANTICS BYTE
NLS_NCHAR_CONV_EXCP FALSE
(all others are NULL)

select * from nls_database_parameters

I get the results:
NLS_LANGUAGE AMERICAN
NLS_TERRITORY AMERICA
NLS_CURRENCY $
NLS_ISO_CURRENCY AMERICA
NLS_NUMERIC_CHARACTERS .,
NLS_CHARACTERSET WE8MSWIN1252
NLS_CALENDAR GREGORIAN
NLS_DATE_FORMAT DD-MON-RR
NLS_DATE_LANGUAGE AMERICAN
NLS_SORT BINARY
NLS_TIME_FORMAT HH.MI.SSXFF AM
NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM
NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR
NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR
NLS_DUAL_CURRENCY $
NLS_COMP BINARY
NLS_LENGTH_SEMANTICS BYTE
NLS_NCHAR_CONV_EXCP FALSE
NLS_NCHAR_CHARACTERSET AL16UTF16
NLS_RDBMS_VERSION 11.2.0.2.0

select * from nls_session_parameters

I get the results:
NLS_LANGUAGE DANISH
NLS_TERRITORY DENMARK
NLS_CURRENCY kr
NLS_ISO_CURRENCY DENMARK
NLS_NUMERIC_CHARACTERS ,.
NLS_CALENDAR GREGORIAN
NLS_DATE_FORMAT RR-MM-DD
NLS_DATE_LANGUAGE DANISH
NLS_SORT DANISH
NLS_TIME_FORMAT HH24:MI:SSXFF
NLS_TIMESTAMP_FORMAT RR-MM-DD HH24:MI:SSXFF
NLS_TIME_TZ_FORMAT HH24:MI:SSXFF TZR
NLS_TIMESTAMP_TZ_FORMAT RR-MM-DD HH24:MI:SSXFF TZR
NLS_DUAL_CURRENCY (Euro)
NLS_COMP BINARY
NLS_LENGTH_SEMANTICS BYTE
NLS_NCHAR_CONV_EXCP FALSE

select length(chr(2000000000)) l4, length(chr(2000000)) l3, length(chr(20000)) l2, 'c' c1 from dual

I get the results:
1 1 1 c
 
Back
Top