Re: Bug #4170: ocilogon fails intermittenly

From: Date: Tue, 18 Apr 2000 08:02:43 +0000
Subject: Re: Bug #4170: ocilogon fails intermittenly
References: 1  Groups: php.dev 
Request: Send a blank email to php-dev+get-17996@lists.php.net to get a copy of this message
On Tue, Apr 18, 2000 at 07:35:25AM -0000, victor@catchacorp.com wrote: > From: victor@catchacorp.com > Operating system: redhat 6 > PHP version: 3.0.16 > PHP Bug Type: Oracle related > Bug description: ocilogon fails intermittenly > > the error is: "Warning: oci8_open_server: ORA-12154: TNS:could not resolve service name in > /home/httpd/html/signin.php3 on line 5" > > --------background > today we just installed the latest php3 and apache from source on our new redhat 6.1 (Intel). > for php3, i ran > configure --with-oracle=/u01/app/oracle/product/8.1.5 --with-apache=/usr/local/apache-1.3.12 > > for apache, i ran > configure --activate-module=/src/modules/php3/libphp3.a > > apache confirmed working. please set the needed env-vars *before* you start apache (ORACLE_HOME, NLS_LANG...) - that should solve your problem! > > our oracle8i was installed on a sunOS 5.7. > > the following php script failed: > <?php > require("config.dat"); > > putenv("ORACLE_HOME=/u01/app/oracle/product/8.1.5"); > $conn1 = ocilogon($username, $password, "dbname"); > > //sql statements > ?> > > the warning is: "Warning: oci8_open_server: ORA-12154: TNS:could not resolve service name > in /home/httpd/html/signin.php3 on line 5" > > The strange thing is, 10% of the time it works -- it spits out the sql output with no warning > message. > > The same script always works on a freebsd box. tnsnames.ora is copied from this freebsd box. > > also, on the same redhat6 box, my perl scripts CAN connect to the oracle and can SELECT stuff. > > ---php3.ini: > [PHP_3] > > ;;;;;;;;;;;;;;;;;;; > ; About this file ; > ;;;;;;;;;;;;;;;;;;; > ; This file controls many aspects of PHP's behavior. In order for PHP to > ; read it, it must be named 'php3.ini'. PHP looks for it in the current > ; working directory, in the path designated by the environment variable > ; PHPRC, and in the path that was defined in compile time (in that order). > ; Under Windows, the compile-time path is the Windows directory. The > ; path in which the php3.ini file is looked for can be overriden using > ; the -c argument in command line mode. > ; > ; The syntax of the file is extremely simple. Whitespace and Lines > ; beginning with a semicolon are silently ignored (as you probably guessed). > ; Section headers (e.g. [Foo]) are also silently ignored, even though > ; they might mean something in the future (they probably won't). > ; > ; Options are specified using the syntax key = value or key = "complex value". > ; Key names are *case sensitive*. foo = bar is different from FOO = bar. > ; 'value' can be any number, word or keyword (keywords are On, Off, True, > ; False, Yes and No, and are case insensitive). > ; 'complex value' can be just about anything, expcept for " and a newline > ; Boolean flags can be turned on using the values 1, On, True or Yes. > ; They can be turned off using the values 0, Off, False or No. > ; > ; All the values in the php3.ini-dist file correspond to the builtin > ; defaults (that is, if no php3.ini is used, or if you delete these lines, > ; the builtin defaults will be identical). > > > ;;;;;;;;;;;;;;;;;;;; > ; Language Options ; > ;;;;;;;;;;;;;;;;;;;; > > engine = On ; enable PHP 3.0 parser > short_open_tag = On ; allow the <? tag. otherwise, only <?php and <script> tags > are recognized. > asp_tags = Off ; allow ASP-style <% %> tags > precision = 14 ; number of significant digits displayed in floating point numbers > y2k_compliance = Off ; whether to be year 2000 compliant (will cause problems with non y2k > compliant browsers) > > ; Safe Mode > safe_mode = Off > safe_mode_exec_dir = > safe_mode_allowed_env_vars = PHP_ ; Setting certain environment variables > ; may be a potential security breach. > ; This directive contains a comma-delimited > ; list of prefixes. In Safe Mode, the > ; user may only alter environment > ; variables whose names begin with the > ; prefixes supplied here. > ; By default, users will only be able > ; to set environment variables that begin > ; with PHP_ (e.g. PHP_FOO=BAR). > ; Note: If this directive is empty, PHP > ; will let the user modify ANY environment > ; variable! > safe_mode_protected_env_vars = LD_LIBRARY_PATH ; This directive contains a comma- > ; delimited list of environment variables, > ; that the end user won't be able to > ; change using putenv(). > ; These variables will be protected > ; even if safe_mode_allowed_env_vars is > ; set to allow to change them. > > > ; Colors for Syntax Highlighting mode. Anything that's acceptable in <font > color=???> would work. > highlight.string = #DD0000 > highlight.comment = #FF8000 > highlight.keyword = #007700 > highlight.bg = #FFFFFF > highlight.default = #0000BB > highlight.html = #000000 > > > expose_php = On ; Decides whether PHP may expose the fact that it is installed on the > ; server (e.g., by adding its signature to the Web server header). > ; It is no security threat in any way, but it makes it possible > ; to determine whether you use PHP on your server or not. > > ; charset = iso-8859-1 ; This sets the charset for the default text/html type served up by PHP > > ;;;;;;;;;;;;;;;;;;; > ; Resource Limits ; > ;;;;;;;;;;;;;;;;;;; > > max_execution_time = 30 ; Maximum execution time of each script, in seconds > memory_limit = 8388608 ; Maximum amount of memory a script may consume (8MB) > > > ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; > ; Error handling and logging ; > ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; > ; error_reporting is a bit-field. Add each number up to get desired error reporting level > ; 1 = Normal errors > ; 2 = Normal warnings > ; 4 = Parser errors > ; 8 = Notices - warnings you can ignore, but sometimes imply a bug (e.g., using an > uninitialized variable) > error_reporting = 7 > display_errors = On ; Print out errors (as a part of the HTML script) > log_errors = Off ; Log errors into a log file (server-specific log, stderr, or error_log > (below)) > track_errors = Off ; Store the last error/warning message in $php_errormsg (boolean) > ;error_prepend_string = "<font color=ff0000>" ; string to output before an > error message > ;error_append_string = "</font>" ; string to output after an > error message > ;error_log = filename ; log errors to specified file > ;error_log = syslog ; log errors to syslog (Event Log on NT, not valid in Windows 95) > warn_plus_overloading = Off ; warn if the + operator is used with strings > > > ;;;;;;;;;;;;;;;;; > ; Data Handling ; > ;;;;;;;;;;;;;;;;; > magic_quotes_gpc = On ; magic quotes for incoming GET/POST/Cookie data > magic_quotes_runtime= Off ; magic quotes for runtime-generated data, e.g. data from SQL, from > exec(), etc. > magic_quotes_sybase = Off ; Use Sybase-style magic quotes (escape ' with '' > instead of \') > track_vars = On ; enable $HTTP_GET_VARS[], $HTTP_POST_VARS[] and $HTTP_COOKIE_VARS[] arrays > ; automatically add files before or after any PHP 3.0 document > auto_prepend_file = > auto_append_file = > > > ;;;;;;;;;;;;;;;;;;;;;;;;; > ; Paths and Directories ; > ;;;;;;;;;;;;;;;;;;;;;;;;; > include_path = ; UNIX: "/path1:/path2" Windows: > "\path1;\path2" > doc_root = ; the root of the php pages, used only if nonempty > user_dir = ; the directory under which php opens the script using /~username, used only if > nonempty > ;upload_tmp_dir = ; temporary directory for HTTP uploaded files (will use > system default if not specified) > upload_max_filesize = 2097152 ; 2 Meg default limit on file uploads > extension_dir = ./ ; directory in which the loadable extensions (modules) reside > > > ;;;;;;;;;;;;;;;;;;;;;; > ; Dynamic Extensions ; > ;;;;;;;;;;;;;;;;;;;;;; > ; if you wish to have an extension loaded automaticly, use the > ; following syntax: extension=modulename.extension > ; for example, on windows, > ; extension=msql.dll > ; or under UNIX, > ; extension=msql.so > ; Note that it should be the name of the module only, no directory information > ; needs to go here. Specify the location of the extension with the extension_dir directive > above. > > > ;Windows Extensions > ;extension=php3_mysql.dll > ;extension=php3_calendar.dll > ;extension=php3_dbase.dll > ;extension=php3_gd.dll > ;extension=php3_dbm.dll > ;extension=php3_mssql.dll > ;extension=php3_zlib.dll > ;extension=php3_filepro.dll > ;extension=php3_imap4r1.dll > ;extension=php3_ldap.dll > ;extension=php3_crypt.dll > ;extension=php3_msql2.dll > ;extension=php3_odbc.dll > > ;;;;;;;;;;;;;;;;;;; > ; Module Settings ; > ;;;;;;;;;;;;;;;;;;; > > [Syslog] > define_syslog_variables = Off ; Whether or not to define the various syslog variables, > ; e.g. $LOG_PID, $LOG_CRON, etc. Turning it off is a > ; good idea performance-wise. In runtime, you can define > ; these variables by calling define_syslog_variables() > > > [mail function] > SMTP = localhost ;for win32 only > sendmail_from = me@localhost.com ;for win32 only > sendmail_path = ;for unix only, may supply arguments as well (default is sendmail -t) > > [Debugger] > debugger.host = localhost > debugger.port = 7869 > debugger.enabled = False > > [Logging] > ; These configuration directives are used by the example logging mechanism. > ; See examples/README.logging for more explanation. > ;logging.method = db > ;logging.directory = /path/to/log/directory > > [SQL] > sql.safe_mode = Off > > [ODBC] > ;uodbc.default_db = Not yet implemented > ;uodbc.default_user = Not yet implemented > ;uodbc.default_pw = Not yet implemented > uodbc.allow_persistent = On ; allow or prevent persistent links > uodbc.max_persistent = -1 ; maximum number of persistent links. -1 means no limit > uodbc.max_links = -1 ; maximum number of links (persistent+non persistent). -1 means no limit > uodbc.defaultlrl = 4096 ; Handling of LONG fields. Returns number of bytes to variables, 0 > means passthru > uodbc.defaultbinmode = 1 ; Handling of binary data. 0 means passthru, 1 return as is, 2 > convert to char > ; See the documentation on odbc_binmode and odbc_longreadlen for an explanation of > uodbc.defaultlrl > ; and uodbc.defaultbinmode > > [MySQL] > mysql.allow_persistent = On ; allow or prevent persistent link > mysql.max_persistent = -1 ; maximum number of persistent links. -1 means no limit > mysql.max_links = -1 ; maximum number of links (persistent+non persistent). -1 means no > limit > mysql.default_port = ; default port number for mysql_connect(). If unset, > ; mysql_connect() will use the $MYSQL_TCP_PORT, or the mysql-tcp > ; entry in /etc/services, or the compile-time defined MYSQL_PORT > ; (in that order). Win32 will only look at MYSQL_PORT. > mysql.default_host = ; default host for mysql_connect() (doesn't apply in safe mode) > mysql.default_user = ; default user for mysql_connect() (doesn't apply in safe mode) > mysql.default_password = ; default password for mysql_connect() (doesn't apply in safe > mode) > ; Note that this is generally a *bad* idea to store passwords > ; in this file. *Any* user with PHP access can run > ; 'echo cfg_get_var("mysql.default_password")' and reveal that > ; password! And of course, any users with read access to this > ; file will be able to reveal the password as well. > > [mSQL] > msql.allow_persistent = On ; allow or prevent persistent link > msql.max_persistent = -1 ; maximum number of persistent links. -1 means no limit > msql.max_links = -1 ; maximum number of links (persistent+non persistent). -1 means no limit > > [PostgresSQL] > pgsql.allow_persistent = On ; allow or prevent persistent link > pgsql.max_persistent = -1 ; maximum number of persistent links. -1 means no limit > pgsql.max_links = -1 ; maximum number of links (persistent+non persistent). -1 means no > limit > > [Sybase] > sybase.allow_persistent = On ; allow or prevent persistent link > sybase.max_persistent = -1 ; maximum number of persistent links. -1 means no limit > sybase.max_links = -1 ; maximum number of links (persistent+non persistent). -1 means no > limit > ;sybase.interface_file = "/usr/sybase/interfaces" > sybase.min_error_severity = 10 ; minimum error severity to display > sybase.min_message_severity = 10 ; minimum message severity to display > sybase.compatability_mode = Off ; compatability mode with earlier versions of PHP 3.0. > ; If on, this will cause PHP to automatically assign types to results > ; according to their Sybase type, instead of treating them all as > ; strings. This compatability mode will probably not stay around > ; forever, so try applying whatever necessary changes to your code, > ; and turn it off. > > [Sybase-CT] > sybct.allow_persistent = On ; allow or prevent persistent link > sybct.max_persistent = -1 ; maximum number of persistent links. -1 means no limit > sybct.max_links = -1 ; maximum number of links (persistent+non persistent). -1 means no > limit > sybct.min_server_severity = 10 ; minimum server message severity to display > sybct.min_client_severity = 10 ; minimum client message severity to display > > [bcmath] > bcmath.scale = 0 ; number of decimal digits for all bcmath functions > > [browscap] > ;browscap = extra/browscap.ini > > [image] > ;ps.default_encoding = "/etc/t1lib/enc/IsoLatin1.enc" ; default character encoding > vector for PostScript Type1 fonts > > [Informix] > ifx.default_host = ; default host for ifx_connect() (doesn't apply in safe mode) > ifx.default_user = ; default user for ifx_connect() (doesn't apply in safe mode) > ifx.default_password = ; default password for ifx_connect() (doesn't apply in safe mode) > ifx.allow_persistent = On ; allow or prevent persistent link > ifx.max_persistent = -1 ; maximum number of persistent links. -1 means no limit > ifx.max_links = -1 ; maximum number of links (persistent+non persistent). -1 means no limit > ifx.textasvarchar = 0 ; if set on, select statements return the contents of a text blob > instead of it's id > ifx.byteasvarchar = 0 ; if set on, select statements return the contents of a byte blob > instead of it's id > ifx.charasvarchar = 0 ; trailing blanks are stripped from fixed-length char columns. May help > the life > ; of Informix SE users. > ifx.blobinfile = 0 ; if set on, the contents of text&byte blobs are dumped to a file > instead of > ; keeping them in memory > ifx.nullformat = 0 ; NULL's are returned as empty strings, unless this is set to 1. In > that case, > ; NULL's are returned as string 'NULL'. > > > > > -- > PHP Development Mailing List <http://www.php.net/> > To unsubscribe, e-mail: php-dev-unsubscribe@lists.php.net > For additional commands, e-mail: php-dev-help@lists.php.net > To contact the list administrators, e-mail: php-list-admin@lists.php.net -- Thies C. Arntzen "One Big-Mac, Small Fries and a Coke!" Digital Collections Phone +49 40 235350 Fax +49 40 23535180 Hammerbrookstr. 93 20097 Hamburg / Germany

« previous php.dev (#17996) next »