1753979 Members
4127 Online
108811 Solutions
New Discussion юеВ

CSV2PNG

 
Ruslan Laishev
Occasional Advisor

CSV2PNG


Failed to create directory disk$sysman:[voipkbill.reports], may exist already


CSVPNG V1.0-170 Copyright 2001-2008 Hewlett-Packard Development Company, L.P.

Reading data from disk$sysman:[voipkbill.reports]stat2t4-10-mins.csv
Format 1: 8 parameters in disk$sysman:[voipkbill.reports]stat2t4-10-mins.csv
Number of Intervals = 1367

Warning! 455 sample values are missing!

 

Start date = 1-DEC-2011 06:15:08.00, End date = 27-DEC-2011 13:52:16.00

Chart will be 1024 pixels wide and 640 pixels high

  # Parameter Name                            Min      Avg       Max      MaxTime       P10.0    Median   P90.0

  1 Seconds                                  0.00   878.42  5419.00 20-DEC-2011 21:09     0.00   573.00  2286.00
%SYSTEM-F-ACCVIO, access violation, reason mask=00, virtual address=FFFFFFFFFFFFFFFF, PC=FFFFFFFF84B95560, PS=0000001B
%TRACE-F-TRACEBACK, symbolic stack dump follows
image     module    routine               line      rel PC           abs PC
DECC$SHR  C$STRLEN  strlen                3708 0000000000000180 FFFFFFFF84B95560
DECC$SHR  C$STRSTR  _strstr32             3837 0000000000000062 FFFFFFFF84B9E842
CSVPNG_IA64  csvpng  draw_chart          20155 0000000000028D32 0000000000108D32
CSVPNG_IA64  csvpng  main                15038 0000000000001A92 00000000000E1A92
CSVPNG_IA64  csvpng  __main              14826 00000000000000D2 00000000000E00D2
                                             0 FFFFFFFF80A1B3D2 FFFFFFFF80A1B3D2
DCL                                          0 000000000007D032 000000007AE09032
%TRACE-I-END, end of TRACE stack dump
$

 

 

 

CSVPNG V1.0-170 Copyright 2001-2008 Hewlett-Packard Development Company, L.P.

Reading data from disk$sysman:[voipkbill.reports]stat2t4-10-mins.csv
Format 1: 8 parameters in disk$sysman:[voipkbill.reports]stat2t4-10-mins.csv
Number of Intervals = 1367

Warning! 455 sample values are missing!

Start date = 1-DEC-2011 06:15:08.00, End date = 27-DEC-2011 13:52:16.00

Chart will be 1024 pixels wide and 640 pixels high

  # Parameter Name                            Min      Avg       Max      MaxTime       P10.0    Median   P90.0

  1 Seconds                                  0.00   878.42  5419.00 20-DEC-2011 21:09     0.00   573.00  2286.00
%SYSTEM-F-ACCVIO, access violation, reason mask=00, virtual address=FFFFFFFFFFFFFFFF, PC=FFFFFFFF84298900, PS=0000001B
%TRACE-F-TRACEBACK, symbolic stack dump follows
  image    module    routine             line      rel PC           abs PC
 DECC$SHR_EV56                              0 0000000000000900 FFFFFFFF84298900
 DECC$SHR_EV56                              0 000000000015267C FFFFFFFF843EA67C
 CSVPNG_ALPHA                               0 0000000000063D68 0000000000063D68
 CSVPNG_ALPHA                               0 0000000000050B3C 0000000000050B3C
 CSVPNG_ALPHA                               0 000000000005006C 000000000005006C
                                            0 FFFFFFFF80389C44 FFFFFFFF80389C44
%TRACE-I-END, end of TRACE stack dump
$

 

Any ideas ?

 

 

 

3 REPLIES 3
Volker Halle
Honored Contributor

Re: CSV2PNG

Ruslan,

 

most likely a bug in CSVPNG routine draw_chart, less likely a bug in the CRTL routine strlen.

 

You can probably do some additional troubleshooting by using SET PROC/DUMP before reproducing the problem and then ANALYZE/PROCESS the .DMP file to find out, which parameter may be causing that ACCVIO at virtual address -1 (xffffffffffffffff).

 

You can also send a mail to t4@hp.com, but you will need to provide your .CSV file as a possible reproducer.

 

Volker.

Ruslan Laishev
Occasional Advisor

Re: CSV2PNG

Thanks! :-)
Hoff
Honored Contributor

Re: CSV2PNG

The use of strlen() in the code is arguably a bug in CSVPNG.  It should be a strnlen() call.

 

strcpy() similarly gets swapped for strlcpy (if you have that, and VMS doesn't) or strncpy with manual null-termination or manual null-termination and strncat (which null-terminates).  Etc.

 

The following is a common replacement list (swiped from SO) for C functions:

strcpy -> strncpy
strlen -> strnlen
strcmp -> strncmp
strcat -> strncat
strdup -> strndup
sprintf -> snprintf
wcscpy -> wcsncpy
wcslen -> wcsnlen

 

The VMS C compilers are unfortunately poor at flagging questionable and insecure coding practices.