pgloader icon indicating copy to clipboard operation
pgloader copied to clipboard

Undefined alien: "SSLeay" and "*SYSTEM-DEFINITION-SEARCH-FUNCTIONS*" is not external

Open CyrusII opened this issue 3 years ago • 0 comments

Hi Dimitri,

I'm currently evaluating PGLoader 3.6.3 on : Oracle Linux 8.5 I am trying to migrate a MS SQL Server to postgres.

I first ran ./bootstrapCentos7.sh that installed all the dependencies with sbcl 1.4.0 make pgloader Worked fine. I used the CentOs7 dependencies, because sbcl is not available on Oracle 8 repository.

[dmadmin@nb27758 inst]$ pgloader --version
pgloader version "3.6.3~devel"
compiled with SBCL 1.4.0-1.el7

I ran a very simple commande file:

load database

        from mssql://docbase:docbase@DCTM73:1433/dm_docbase_docbase
        into postgresql://postgres:postgres@localhost:5432/dm_docbase_docbase

set work_mem to '16MB', maintenance_work_mem to '512 MB';

--

I have the following error very similar to something described in #133 :

KABOOM!
FATAL error: Undefined alien: "SSLeay"
An unhandled error condition has been signalled: Undefined alien: "SSLeay"
What I am doing here?
Undefined alien: "SSLeay"

Here is the same execution with --debug:

[dmadmin@nb27758 ~]$ pgloader --debug command-file.io 
pgloader version 3.6.3~devel
compiled with SBCL 1.4.0-1.el7
sb-impl::*default-external-format* :UTF-8
tmpdir: #P"/tmp/pgloader/"
2022-03-11T14:08:06.015000+01:00 NOTICE Starting pgloader, log system is ready.
2022-03-11T14:08:06.029000+01:00 INFO Starting monitor
2022-03-11T14:08:06.033000+01:00 LOG pgloader version "3.6.3~devel"
2022-03-11T14:08:06.033000+01:00 INFO Parsed command:
load database 

	from mssql://docbase:docbase@DCTM73:1433/dm_docbase_docbase 
	into postgresql://postgres:postgres@localhost:5432/dm_docbase_docbase

set work_mem to '16MB', maintenance_work_mem to '512 MB'

before load do $$ drop schema if exists dbo cascade; $$;


KABOOM!
FATAL error: Undefined alien: "SSLeay"
Date/time: 2022-03-11-14:08!
An unhandled error condition has been signalled: Undefined alien: "SSLeay"


Backtrace for: #<SB-THREAD:THREAD "main thread" RUNNING {1007B76603}>
0: (TRIVIAL-BACKTRACE:PRINT-BACKTRACE-TO-STREAM #<SB-IMPL::STRING-OUTPUT-STREAM {1008C44DF3}>)
1: (TRIVIAL-BACKTRACE:PRINT-BACKTRACE #<SB-KERNEL:UNDEFINED-ALIEN-STYLE-WARNING {1008C44C83}> :OUTPUT NIL :IF-EXISTS :APPEND :VERBOSE NIL)
2: ((FLET "H0" :IN PGLOADER::MAIN) #<SB-KERNEL:UNDEFINED-ALIEN-STYLE-WARNING {1008C44C83}>)
3: (SB-KERNEL::%SIGNAL #<SB-KERNEL:UNDEFINED-ALIEN-STYLE-WARNING {1008C44C83}>)
4: ((FLET SB-KERNEL::%WARN :IN "/builddir/build/BUILD/sbcl-1.4.0/sbcl-1.4.0/src/code/warm-error.lisp") SB-KERNEL:UNDEFINED-ALIEN-STYLE-WARNING #<SB-KERNEL::CONDITION-CLASSOID STYLE-WARNING> SB-INT:SIMPLE-STYLE-WARNING :SYMBOL "SSLeay")
5: (SB-SYS:ENSURE-DYNAMIC-FOREIGN-SYMBOL-ADDRESS "SSLeay" NIL)
6: ((FLET SB-THREAD::WITH-RECURSIVE-SYSTEM-LOCK-THUNK :IN SB-SYS:UPDATE-LINKAGE-TABLE))
7: ((FLET "WITHOUT-INTERRUPTS-BODY-67" :IN SB-THREAD::CALL-WITH-RECURSIVE-SYSTEM-LOCK))
8: (SB-THREAD::CALL-WITH-RECURSIVE-SYSTEM-LOCK #<CLOSURE (FLET SB-THREAD::WITH-RECURSIVE-SYSTEM-LOCK-THUNK :IN SB-SYS:UPDATE-LINKAGE-TABLE) {7FFFF6B8701B}> #<SB-THREAD:MUTEX "hash-table lock" owner: #<SB-THREAD:THREAD "main thread" RUNNING {1007B76603}>>)
9: (SB-SYS:UPDATE-LINKAGE-TABLE)
10: ((FLET "WITHOUT-INTERRUPTS-BODY-1" :IN SB-THREAD::CALL-WITH-MUTEX))
11: (SB-THREAD::CALL-WITH-MUTEX #<CLOSURE (FLET SB-THREAD::WITH-MUTEX-THUNK :IN LOAD-SHARED-OBJECT) {7FFFF6B871CB}> #<SB-THREAD:MUTEX "shared object list lock" owner: #<SB-THREAD:THREAD "main thread" RUNNING {1007B76603}>> NIL T NIL)
12: (LOAD-SHARED-OBJECT "libsybdb.so" :DONT-SAVE NIL)
13: (CFFI::LOAD-FOREIGN-LIBRARY-PATH MSSQL::SYBDB "libsybdb.so" NIL)
14: (CFFI::TRY-FOREIGN-LIBRARY-ALTERNATIVES MSSQL::SYBDB ("libsybdb.so" "libsybdb.so.5") NIL)
15: ((FLET CFFI::%DO-LOAD :IN CFFI::%DO-LOAD-FOREIGN-LIBRARY) #<CFFI:FOREIGN-LIBRARY SYBDB "libsybdb.so"> MSSQL::SYBDB (:OR "libsybdb.so" "libsybdb.so.5"))
16: (CFFI:LOAD-FOREIGN-LIBRARY MSSQL::SYBDB :SEARCH-PATH NIL)
17: ((LAMBDA ()))
18: (PGLOADER:RUN-COMMANDS #P"/home/dmadmin/command-file.io" :START-LOGGER NIL :FLUSH-SUMMARY T :SUMMARY NIL :LOG-FILENAME NIL :LOG-MIN-MESSAGES NIL :CLIENT-MIN-MESSAGES NIL)
19: (PGLOADER::PROCESS-COMMAND-FILE ("command-file.io") :FLUSH-SUMMARY T)
20: (PGLOADER.MONITOR::CALL-WITH-MONITOR #<CLOSURE (LAMBDA NIL :IN PGLOADER::MAIN) {1007BD343B}>)
21: (PGLOADER::MAIN ("pgloader" "--debug" "command-file.io"))
22: ((LAMBDA NIL :IN "/opt/inst/dumper-2SKVI5f7.lisp"))
23: ((FLET "WITHOUT-INTERRUPTS-BODY-35" :IN SAVE-LISP-AND-DIE))
24: ((LABELS SB-IMPL::RESTART-LISP :IN SAVE-LISP-AND-DIE))



2022-03-11T14:08:06.039000+01:00 INFO Stopping monitor

What I am doing here?

Undefined alien: "SSLeay"

As I've read that [JeffJankowski] recompiled with 1.5.1 and fixed this issue, I tried to recompile with several sbcl versions, starting with 1.4.2 to latest 2.2.2, but each time compilation fails:

Fatal INPUT-ERROR-IN-LOAD:
  READ error during LOAD:

    The symbol "*SYSTEM-DEFINITION-SEARCH-FUNCTIONS*" is not external in the ASDF/FIND-SYSTEM package.

      Line: 17, Column: 90, File-Position: 12887

      Stream: #<SB-INT:FORM-TRACKING-STREAM for "file /opt/inst/dumper-2SKVI5f7.lisp" {100154FA33}>

Do you have an idea of how to solve either issue? Many thanks in advance

CyrusII avatar Mar 11 '22 13:03 CyrusII