Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Install fails on Ubuntu 21.04: Failed test t/02simple.t : ReadOnly set #20

Open
hakonhagland opened this issue Jul 25, 2021 · 0 comments

Comments

@hakonhagland
Copy link

I am trying to install DBD::ODBC on Ubuntu 21.04:

$ perl Makefile.PL 

**********
	Remember to actually *READ* the README file!
	And re-read it if you have any problems.

**********

OSNAME: linux
LANG: en_US.UTF-8
ODBCHOME: 
LD_LIBRARY_PATH: /home/hakon/lib
DBROOT: 
WINDIR: 
II_SYSTEM: 
DBD_ODBC_UNICODE: 
Perl: 5.032000
ExtUtils::MakeMaker: 7.62
Command line options:
  w! = undef
  o=s = 
  e! = undef
  g! = 0
  x! = undef
  u! = undef


Your LANG environment variable is set to "en_US.UTF-8"
This is known to cause problems in some perl installations - even stopping
this Makefile.PL from running without errors. If you have problems please
try re-running with LANG unset or with the utf part of LANG removed.

Looking for odbc_config in : nowhere
Looking for odbc_config in (PATH) /home/hakon/perlbrew/bin:/home/hakon/perlbrew/perls/perl-5.32.0/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
  odbc_config not found
Looking for iodbc-config in PATH /home/hakon/perlbrew/bin:/home/hakon/perlbrew/perls/perl-5.32.0/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
  iodbc_config not found
odbc_config not found - ok, there are other things I can do
Still trying to guess ODBCHOME - looking for headers now
  trying /usr/include
  Found sql.h, sqlext.h, sqltypes.h in /usr/include
Using ODBCHOME /usr
  Looking for iODBC libs in /usr/lib
  Looking for iODBC libs in /usr/local/lib
  Looking for iODBC libs in /usr/include/x86_64-linux-gnu
  Looking for iODBC libs in /usr/lib
  Looking for iODBC libs in /lib/x86_64-linux-gnu
  Looking for iODBC libs in /lib/../lib
  Looking for iODBC libs in /usr/lib/x86_64-linux-gnu
  Looking for iODBC libs in /usr/lib/../lib
  Looking for iODBC libs in /lib
  Looking for iODBC libs in /lib64
  Looking for iODBC libs in /usr/lib64
  Looking for iODBC libs in /usr
  Looking for iODBC libs in /usr/lib
  Looking for unixODBC libs in /usr/lib
  Looking for unixODBC libs in /usr/local/lib
  Looking for unixODBC libs in /usr/include/x86_64-linux-gnu
  Looking for unixODBC libs in /usr/lib
  Looking for unixODBC libs in /lib/x86_64-linux-gnu
    Found unixODBC libs /lib/x86_64-linux-gnu/libodbc.a,/lib/x86_64-linux-gnu/libodbc.so,/lib/x86_64-linux-gnu/libodbc.so.1,/lib/x86_64-linux-gnu/libodbc.so.2,/lib/x86_64-linux-gnu/libodbc.so.2.0.0,/lib/x86_64-linux-gnu/libodbccr.a,/lib/x86_64-linux-gnu/libodbccr.so,/lib/x86_64-linux-gnu/libodbccr.so.1,/lib/x86_64-linux-gnu/libodbccr.so.2,/lib/x86_64-linux-gnu/libodbccr.so.2.0.0,/lib/x86_64-linux-gnu/libodbcinst.a,/lib/x86_64-linux-gnu/libodbcinst.so,/lib/x86_64-linux-gnu/libodbcinst.so.1,/lib/x86_64-linux-gnu/libodbcinst.so.2,/lib/x86_64-linux-gnu/libodbcinst.so.2.0.0 in /lib/x86_64-linux-gnu

This looks like a unixodbc type of driver manager.
Looking for odbcinst
  Found odbcinst in /usr/bin
  odbcinst -j reports:

unixODBC 2.3.6
DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
FILE DATA SOURCES..: /etc/ODBCDataSources
USER DATA SOURCES..: /home/hakon/.odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8

Please note these files as they are where you define your ODBC drivers and data sources.

Looking for odbc_config to get cflags
  odbc_config not found - ok
Warning: LD_LIBRARY_PATH=/home/hakon/lib doesn't include /lib/x86_64-linux-gnu

Checking if your kit is complete...
Looks good
Using DBI 1.643 (for perl 5.032000 on x86_64-linux) installed in /home/hakon/perlbrew/perls/perl-5.32.0/lib/site_perl/5.32.0/x86_64-linux/auto/DBI/
Using DBI 1.643 (for perl 5.032000 on x86_64-linux) installed in /home/hakon/perlbrew/perls/perl-5.32.0/lib/site_perl/5.32.0/x86_64-linux/auto/DBI/
Generating a Unix-style Makefile
Writing Makefile for DBD::ODBC
Writing MYMETA.yml and MYMETA.json

The DBD::ODBC tests will use these values for the database connection:
    DBI_DSN=dbi:ODBC:mydsn     e.g. dbi:ODBC:demo
    DBI_USER=hakon
    DBI_PASS=???????

$ make
$ make test
"/home/hakon/perlbrew/perls/perl-5.32.0/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- ODBC.bs blib/arch/auto/DBD/ODBC/ODBC.bs 644
PERL_DL_NONLAZY=1 "/home/hakon/perlbrew/perls/perl-5.32.0/bin/perl" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/01base.t ................... ok   
t/02simple.t ................. 1/66 # 
# Perl 5.32.0
# osname=linux, osvers=5.11.0-16-generic, archname=x86_64-linux
# Using DBI 1.643
# Using DBD::ODBC 1.61
# Using DBMS_NAME 'MySQL'
# Using DBMS_VER '8.0.25-0ubuntu0.21.04.1'
# Using DRIVER_NAME 'libmyodbc8w.so'
# Using DRIVER_VER '08.00.0026'
# odbc_has_unicode 

#   Failed test 'ReadOnly set'
#   at t/02simple.t line 63.
#          got: '0'
#     expected: '1'
t/02simple.t ................. 15/66 # Looks like you failed 1 test of 66.
t/02simple.t ................. Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/66 subtests 
t/03dbatt.t .................. 1/31 # 
# N.B. Some drivers (postgres/cache) may return ODBC 2.0 column names for the SQLTables result-set e.g. TABLE_QUALIFIER instead of TABLE_CAT
t/03dbatt.t .................. ok     
t/05meth.t ................... ok     
t/07bind.t ................... ok     
t/08bind2.t .................. ok   
t/09multi.t .................. ok   
t/10handler.t ................ ok     
t/12blob.t ................... ok     
t/20SqlServer.t .............. ok     
t/30Oracle.t ................. ok   
t/40UnicodeRoundTrip.t ....... ok     
t/41Unicode.t ................ ok     
t/45_unicode_varchar.t ....... # Driver: libmyodbc8w.so
t/45_unicode_varchar.t ....... skipped: Not MS SQL Server
t/50_odbc_utf8_on.t .......... ok   
t/70execute_array_dbi.t ...... # 
# 
# NOTE: This tests execute_array and execute_for_fetch using DBI's version and not the native DBD::ODBC execute_for_fetch. It should work as it is using nothing special in DBD::ODBC other than the normal methods.
t/70execute_array_dbi.t ...... ok     
t/70execute_array_native.t ... # 
# 
# NOTE: This is an experimental test. Since DBD::ODBC added the execute_for_fetch method this tests the native method and not DBI's fallback method. If you fail this test it probably means the ODBC driver you are using does not have sufficient support (or is buggy) for array operations. If you pass this test your ODBC Driver seems ok and you can get faster insert/update/delete operations using DBI's execute_array or execute_for_fetch methods by setting the odbc_array_operations to true.
# 
# If this test fails it should not stop you installing DBD::ODBC but if it fails with an error other than something indicating 'connection busy' I'd strongly suggest you don't set odbc_array_operations and stick with DBI's default implementation.
# 
# If this test fails for your driver I'd like to hear about it so I can compile a list of working drivers and perhaps pass bug reports on to the maintainers. Please rerun this test with TEST_VERBOSE set or using prove and send the results to the dbi-users mailing list.
# 
# 
# Perl 5.32.0
# osname=linux, osvers=5.11.0-16-generic, archname=x86_64-linux
# Using DBI 1.643
# Using DBD::ODBC 1.61
# Using DBMS_NAME 'MySQL'
# Using DBMS_VER '8.0.25-0ubuntu0.21.04.1'
# Using DRIVER_NAME 'libmyodbc8w.so'
# Using DRIVER_VER '08.00.0026'
# odbc_has_unicode 0
t/70execute_array_native.t ... ok     
t/80_odbc_diags.t ............ ok   
t/82_table_info.t ............ ok   
t/87_odbc_lob_read.t ......... skipped: Not MS SQL Server
t/90_trace_flags.t ........... ok   
t/odbc_describe_parameter.t .. ok     
t/pod-coverage.t ............. ok   
t/pod.t ...................... ok   
t/rt_101579.t ................ ok   
t/rt_38977.t ................. ok     
t/rt_39841.t ................. ok     
t/rt_39897.t ................. ok   
t/rt_43384.t ................. ok   
t/rt_46597.t ................. ok   
t/rt_50852.t ................. ok   
t/rt_57957.t ................. 1/9 # 
# Some of these tests may fail for your driver - please let me know if they do along with the strings MySQL/libmyodbc8w.so
t/rt_57957.t ................. ok   
t/rt_59621.t ................. ok     
t/rt_61370.t ................. ok   
t/rt_62033.t ................. ok   
t/rt_63550.t ................. ok   
t/rt_78838.t ................. ok   
t/rt_79190.t ................. ok   
t/rt_79397.t ................. ok   
t/rt_81911.t ................. 1/? 
#   Failed test 'affected from execute update 1'
#   at t/rt_81911.t line 74.
#          got: '0E0'
#     expected: '1'

#   Failed test 'affected from execute update 2'
#   at t/rt_81911.t line 82.
#          got: '1'
#     expected: '2'
# Looks like you failed 2 tests of 12.
t/rt_81911.t ................. Dubious, test returned 2 (wstat 512, 0x200)
Failed 2/12 subtests 
t/rt_null_nvarchar.t ......... ok   
t/sql_type_cast.t ............ ok     

Test Summary Report
-------------------
t/02simple.t               (Wstat: 256 Tests: 66 Failed: 1)
  Failed test:  3
  Non-zero exit status: 1
t/rt_81911.t               (Wstat: 512 Tests: 12 Failed: 2)
  Failed tests:  8, 10
  Non-zero exit status: 2
Files=42, Tests=1637,  8 wallclock secs ( 0.57 usr  0.07 sys +  3.24 cusr  0.68 csys =  4.56 CPU)
Result: FAIL
Failed 2/42 test programs. 3/1637 subtests failed.
make: *** [Makefile:1016: test_dynamic] Error 255
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant