Информация об изменениях

Сообщение Docker на travis-ci.org глючит в xenial (нет) от 29.07.2019 19:31

Изменено 30.07.2019 5:07 VladCore

Docker на travis-ci.org глючит в xenial но работает в trusty
Речь про SQL Server 2019 последний, сейчас это CTP 3.2

Почему именно Docker глючит, потому что этот сиквел крашится в докере на xenial, и работает в докере на trusty. а других ОС с докером нет в travis-ci.org.

Краш где то в string allocator

$ docker logs sql-2019-for-tests || true
This program has encountered a fatal error and cannot continue running at Mon Jul 29 17:58:09 2019
The following diagnostic information is available:
This is an evaluation version.  There are [173] days left in the evaluation period.
         Reason: 0x00000003
         Status: 0x00000001
        Message: (*__errno_location ()) == 28 || (*__errno_location ()) == 22 || (*__errno_location ()) == 38
          Stack:
                 IP               Function
                 ---------------- --------------------------------------
                 000056004c8fb3aa std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > std::__1::operator+<char, std::__1::char_traits<char>, std::__1::allocator<char> >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > c
                 000056004c8faea9 std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > std::__1::operator+<char, std::__1::char_traits<char>, std::__1::allocator<char> >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > c
                 000056004c8403ee std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > std::__1::operator+<char, std::__1::char_traits<char>, std::__1::allocator<char> >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > c
                 000056004c8db923 std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > std::__1::operator+<char, std::__1::char_traits<char>, std::__1::allocator<char> >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > c
                 000056004c8d72f1 std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > std::__1::operator+<char, std::__1::char_traits<char>, std::__1::allocator<char> >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > c
                 000056004c8d7e6f std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > std::__1::operator+<char, std::__1::char_traits<char>, std::__1::allocator<char> >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > c
                 000056004c83c79b std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > std::__1::operator+<char, std::__1::char_traits<char>, std::__1::allocator<char> >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > c
                 000056004c82e645 <unknown>
                 00007f8e512ed830 __libc_start_main+0xf0
                 000056004c82b029 <unknown>
        Process: 8 - sqlservr
         Thread: 8
    Instance Id: dcc4d00f-a198-4057-be69-a76b10c13025
       Crash Id: ec5ae3da-8dd4-4ee3-bb1f-56fb877472e5
    Build stamp: e7cecc1663d059f8a4c7f4e379339d34261f68cfceb977a62c34ac7bccbb72af
   Distribution: Ubuntu 16.04.6 LTS
     Processors: 2
   Total Memory: 7836004352 bytes
      Timestamp: Mon Jul 29 17:58:09 2019
     Last errno: 1
Last errno text: Operation not permitted
dmesg: read kernel buffer failed: Operation not permitted
No journal files were found.
No journal files were found.
/opt/mssql/bin/crash-support-functions.sh: line 215:   199 Aborted                 (core dumped) $program_dir/paldumper $dokill -p $pid -d $paldumper_dump_type_str -o $dump_filename.gdmp > $paldumper_debuglog_filename 2>&1
Ubuntu 16.04.6 LTS
Capturing core dump and information to /var/opt/mssql/log...
Mon Jul 29 17:58:09 UTC 2019 Capturing program information
Mon Jul 29 17:58:09 UTC 2019 Attempting to capture a dump with paldumper
WARNING: Capture attempt failure detected
Attempting to capture a filtered dump with paldumper
Captured a filtered dump with paldumper
Mon Jul 29 17:58:10 UTC 2019 Capturing program binaries
Mon Jul 29 17:58:11 UTC 2019 Compressing the dump files
The command "docker logs sql-2019-for-tests | head -9999 || true" exited with 0.


Воспроизводится и с докером 18.06 (предустановленный в travis-ci.org) и с 19.03 (последний стабильный) докером. Воспроизводится — в смысле крашится в докере на xenail и работает в trusty.

Может что то надо доустановить или хитрую опцию передать в SQL 2019?
Запускаю как обычно:
docker run -d --privileged --name sql-2019-for-tests -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=Str@ngPassw0rd' -p 1435:1433 mcr.microsoft.com/mssql/server:2019-CTP3.2-ubuntu


если --privileged убрать то нет никакой разницы, я просто его добавил посмотрев на ошибку

Почему я тут пишу — потому что нужен xenial, ибо какашечная Microsoft перестала тестить .NET Core на trusty, хотя каноникал свою trusty еще 3 года за деньги официально саппортит.
Docker на travis-ci.org глючит в xenial но работает в trusty
Речь про SQL Server 2019 последний, сейчас это CTP 3.2

Почему именно Docker глючит, потому что этот сиквел крашится в докере на xenial, и работает в докере на trusty. а других ОС с докером нет в travis-ci.org.

Краш где то в string allocator

$ docker logs sql-2019-for-tests || true
This program has encountered a fatal error and cannot continue running at Mon Jul 29 17:58:09 2019
The following diagnostic information is available:
This is an evaluation version.  There are [173] days left in the evaluation period.
         Reason: 0x00000003
         Status: 0x00000001
        Message: (*__errno_location ()) == 28 || (*__errno_location ()) == 22 || (*__errno_location ()) == 38
          Stack:
                 IP               Function
                 ---------------- --------------------------------------
                 000056004c8fb3aa std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > std::__1::operator+<char, std::__1::char_traits<char>, std::__1::allocator<char> >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > c
                 000056004c8faea9 std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > std::__1::operator+<char, std::__1::char_traits<char>, std::__1::allocator<char> >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > c
                 000056004c8403ee std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > std::__1::operator+<char, std::__1::char_traits<char>, std::__1::allocator<char> >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > c
                 000056004c8db923 std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > std::__1::operator+<char, std::__1::char_traits<char>, std::__1::allocator<char> >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > c
                 000056004c8d72f1 std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > std::__1::operator+<char, std::__1::char_traits<char>, std::__1::allocator<char> >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > c
                 000056004c8d7e6f std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > std::__1::operator+<char, std::__1::char_traits<char>, std::__1::allocator<char> >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > c
                 000056004c83c79b std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > std::__1::operator+<char, std::__1::char_traits<char>, std::__1::allocator<char> >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > c
                 000056004c82e645 <unknown>
                 00007f8e512ed830 __libc_start_main+0xf0
                 000056004c82b029 <unknown>
        Process: 8 - sqlservr
         Thread: 8
    Instance Id: dcc4d00f-a198-4057-be69-a76b10c13025
       Crash Id: ec5ae3da-8dd4-4ee3-bb1f-56fb877472e5
    Build stamp: e7cecc1663d059f8a4c7f4e379339d34261f68cfceb977a62c34ac7bccbb72af
   Distribution: Ubuntu 16.04.6 LTS
     Processors: 2
   Total Memory: 7836004352 bytes
      Timestamp: Mon Jul 29 17:58:09 2019
     Last errno: 1
Last errno text: Operation not permitted
dmesg: read kernel buffer failed: Operation not permitted
No journal files were found.
No journal files were found.
/opt/mssql/bin/crash-support-functions.sh: line 215:   199 Aborted                 (core dumped) $program_dir/paldumper $dokill -p $pid -d $paldumper_dump_type_str -o $dump_filename.gdmp > $paldumper_debuglog_filename 2>&1
Ubuntu 16.04.6 LTS
Capturing core dump and information to /var/opt/mssql/log...
Mon Jul 29 17:58:09 UTC 2019 Capturing program information
Mon Jul 29 17:58:09 UTC 2019 Attempting to capture a dump with paldumper
WARNING: Capture attempt failure detected
Attempting to capture a filtered dump with paldumper
Captured a filtered dump with paldumper
Mon Jul 29 17:58:10 UTC 2019 Capturing program binaries
Mon Jul 29 17:58:11 UTC 2019 Compressing the dump files
The command "docker logs sql-2019-for-tests || true" exited with 0.


Воспроизводится и с докером 18.06 (предустановленный в travis-ci.org) и с 19.03 (последний стабильный) докером. Воспроизводится — в смысле крашится в докере на xenail и работает в trusty.

Может что то надо доустановить или хитрую опцию передать в SQL 2019?
Запускаю как обычно:
docker run -d --privileged --name sql-2019-for-tests -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=Str@ngPassw0rd' -p 1435:1433 mcr.microsoft.com/mssql/server:2019-CTP3.2-ubuntu


если --privileged убрать то нет никакой разницы, я просто его добавил посмотрев на ошибку

Почему я тут пишу — потому что нужен xenial, ибо какашечная Microsoft перестала тестить .NET Core на trusty, хотя каноникал свою trusty еще 3 года за деньги официально саппортит.