Forum Linux.général Problème pour compiler MySQL Cluster sur ARM

Posté par  . Licence CC By‑SA.
Étiquettes :
2
9
juin
2017

Je pense que c'est mort (erreur de programmation) mais je soumet le problème au cas où quelque chose m'aurait échappé.

Donc j'essaye de compiler MySQL Cluster sur ARM Ubuntu 16.04.02 mais il semble manquer des fonctions (rmb(), wmb() et mb())

La séquence de compilation avec l'erreur à la fin :

root@MySQLClusterNode2:/home/USER/Download/mysql-cluster-gpl-7.5.6# make
[  0%] Built target abi_check
[  0%] Built target INFO_SRC
[  0%] Built target INFO_BIN
[  0%] Built target zlib
[  0%] Built target yassl
[  1%] Built target taocrypt
[  2%] Built target edit
[  3%] Built target strings
[  6%] Built target mysys
[  7%] Built target dbug
[  7%] Built target mysys_ssl
[  7%] Built target comp_err
[  7%] Built target GenError
[  7%] Built target partition
[  7%] Built target partition_embedded
[  9%] Built target myisam_embedded
[  9%] Built target myisam_ftdump
[ 10%] Built target myisam
[ 10%] Built target myisamchk
[ 10%] Built target myisamlog
[ 10%] Built target myisampack
[ 10%] Built target archive_embedded
[ 10%] Built target archive
[ 11%] Built target mysqlservices
[ 11%] Built target example
[ 11%] Built target lz4_lib
[ 16%] Built target innobase
[ 20%] Built target innobase_embedded
[ 24%] Built target perfschema
[ 25%] Built target mytap
[ 25%] Built target pfs_server_stubs
[ 25%] Built target pfs_misc-t
[ 25%] Built target pfs_instr-t
[ 25%] Built target pfs_host-oom-t
[ 25%] Built target pfs_instr-oom-t
[ 25%] Built target pfs_instr_class-oom-t
[ 25%] Built target gen_lex_hash
[ 25%] Built target GenServerSource
[ 25%] Built target blackhole
[ 25%] Built target ndbportlib
[ 25%] Built target ndbconf
[ 25%] Built target ndbmgmapi
[ 26%] Built target ndbmgmcommon
[ 26%] Built target ndbtransport
[ 29%] Built target ndbsignaldata
[ 29%] Built target ndblogger
[ 31%] Built target ndbgeneral
[ 31%] Built target ndbtrace
[ 32%] Built target ndbapi
[ 32%] Built target ndbclient_static
[ 33%] Built target ndbcluster
[ 33%] Built target federated
[ 33%] Built target csv
[ 34%] Built target myisammrg
[ 35%] Built target heap
[ 35%] Built target ngram_parser
[ 35%] Built target vio
[ 35%] Built target regex
[ 36%] Built target binlogevents_static
[ 36%] Built target slave
[ 36%] Built target master
[ 36%] Built target binlog
[ 36%] Built target comp_sql
[ 36%] Built target GenSysSchema
[ 36%] Built target gen_lex_token
[ 36%] Built target GenDigestServerSource
[ 36%] Built target GenBootstrapPriv
[ 44%] Built target sql
[ 45%] Built target rpl
[ 45%] Built target pfs_connect_attr-t
[ 45%] Built target pfs_instr_class-t
[ 45%] Built target pfs_noop-t
[ 45%] Built target pfs_account-oom-t
[ 45%] Built target pfs_user-oom-t
[ 45%] Built target pfs-t
[ 45%] Built target csv_embedded
[ 45%] Built target blackhole_embedded
[ 46%] Built target heap_embedded
[ 46%] Built target hp_test2
[ 46%] Built target hp_test1
[ 47%] Built target myisammrg_embedded
[ 47%] Built target federated_embedded
[ 48%] Built target ndbcluster_embedded
[ 48%] Built target ndbclient_static_link_test
[ 48%] Built target ndbjtie
[ 48%] Built target ndbclient_so
[ 48%] Built target ndbclient_shared_link_test
[ 48%] Built target NdbGetInAddr-t
[ 48%] Built target NdbDir-t
[ 48%] Built target BaseString-t
[ 48%] Built target SparseBitmask-t
[ 48%] Built target ndb_version-t
[ 48%] Built target HashMap2-t
[ 48%] Built target Bitmask-t
[ 48%] Built target mysql_utils_test-t
[ 48%] Built target Parser-t
[ 48%] Built target LinkedStack-t
[ 48%] Built target NdbSqlUtil-t
[ 48%] Built target NdbPack-t
[ 48%] Built target mgmapi-t
[ 49%] Built target ndbkernel
[ 49%] Building CXX object storage/ndb/src/kernel/vm/CMakeFiles/ndbsched_mt.dir/mt.cpp.o
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp: In member function ‘bool thr_send_threads::data_available() const’:
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp:1497:9: error: ‘rmb’ was not declared in this scope
     rmb();
         ^
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp: In member function ‘void thr_send_threads::setNodeOverloadStatus(OverloadStatus)’:
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp:1640:8: error: ‘mb’ was not declared in this scope
     mb();
        ^
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp: In member function ‘void thr_send_threads::insert_node(NodeId)’:
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp:1753:7: error: ‘wmb’ was not declared in this scope
   wmb();
       ^
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp: In function ‘void flush_write_state_other(thr_data*, thr_job_queue_head*, thr_jb_write_state*, bool)’:
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp:3464:7: error: ‘wmb’ was not declared in this scope
   wmb();
       ^
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp: In function ‘void flush_write_state_other_wakeup(thr_data*, thr_job_queue_head*, thr_jb_write_state*)’:
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp:3525:7: error: ‘wmb’ was not declared in this scope
   wmb();
       ^
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp: In function ‘void flush_jbb_write_state(thr_data*)’:
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp:3557:7: error: ‘wmb’ was not declared in this scope
   wmb();
       ^
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp: In function ‘Uint32 link_thread_send_buffers(thr_repository::send_buffer*, Uint32)’:
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp:3929:13: error: ‘rmb’ was not declared in this scope
         rmb();
             ^
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp: In function ‘void flush_send_buffer(thr_data*, Uint32)’:
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp:4435:7: error: ‘wmb’ was not declared in this scope
   wmb();
       ^
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp: In member function ‘virtual bool mt_send_handle::forceSend(NodeId)’:
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp:4477:8: error: ‘mb’ was not declared in this scope
     mb();
        ^
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp: In function ‘void try_send(thr_data*, Uint32)’:
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp:4510:8: error: ‘mb’ was not declared in this scope
     mb();
        ^
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp: In function ‘bool do_send(thr_data*, bool, bool)’:
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp:4877:10: error: ‘mb’ was not declared in this scope
       mb();
          ^
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp: In function ‘bool insert_signal(thr_job_queue*, thr_job_queue_head*, thr_jb_write_state*, Uint32, const SignalHeader*, const Uint32*, const Uint32*, thr_job_buffer*)’:
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp:5085:9: error: ‘wmb’ was not declared in this scope
     wmb();
         ^
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp: In function ‘void read_jbb_state(thr_data*, Uint32)’:
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp:5135:30: error: ‘read_barrier_depends’ was not declared in this scope
         read_barrier_depends();
                              ^
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp: In function ‘bool read_jba_state(thr_data*)’:
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp:5148:24: error: ‘read_barrier_depends’ was not declared in this scope
   read_barrier_depends();
                        ^
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp: In function ‘Uint32 run_job_buffers(thr_data*, Signal*, Uint32&, Uint32&, bool&)’:
/home/USER/Download/mysql-cluster-gpl-7.5.6/storage/ndb/src/kernel/vm/mt.cpp:5430:7: error: ‘rmb’ was not declared in this scope
   rmb();
       ^
storage/ndb/src/kernel/vm/CMakeFiles/ndbsched_mt.dir/build.make:158: recipe for target 'storage/ndb/src/kernel/vm/CMakeFiles/ndbsched_mt.dir/mt.cpp.o' failed
make[2]: *** [storage/ndb/src/kernel/vm/CMakeFiles/ndbsched_mt.dir/mt.cpp.o] Error 1
CMakeFiles/Makefile2:4749: recipe for target 'storage/ndb/src/kernel/vm/CMakeFiles/ndbsched_mt.dir/all' failed
make[1]: *** [storage/ndb/src/kernel/vm/CMakeFiles/ndbsched_mt.dir/all] Error 2
Makefile:160: recipe for target 'all' failed
make: *** [all] Error 2

Ma procédure :

apt-get update
apt-get install -y cmake libncurses5-dev libaio1 default-jre build-essential default-jdk git
cd /home/user/Download
wget https://dev.mysql.com/get/Downloads/MySQL-Cluster-7.5/mysql-cluster-gpl-7.5.6.tar.gz
tar -xzf ./mysql-cluster-gpl-7.5.6.tar.gz
cd mysql-cluster-gpl-7.5.6
cmake . -DCMAKE_INSTALL_PREFIX=/service/mysql -DMYSQL_DATADIR=/data/mysql -DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/boost -DSYSCONFDIR=/service/mysql  -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DENABLE_DOWNLOADS=1
make
make install

D'après google ce problème semble exister depuis 2015 (se qui est étonnant pour un logiciel (critique) entretenu par un gafam)
J'essaye d'adapter la solution trouvée ici mais je n'ai pas le fichier qu'ils indiquent.

Si vous avez des pistes, je suis preneur :)

Merci d'avance.

  • # une piste

    Posté par  . Évalué à 3.

    Si vous avez des pistes, je suis preneur :)

    c'est pas dispo dans les paquets de ta distrib ARM avant de vouloir recompiler ?

    • [^] # Re: une piste

      Posté par  . Évalué à 1. Dernière modification le 09 juin 2017 à 23:56.

      Non on ne dirait pas:

      root@MySQLClusterNode2:/home/user# apt-cache search "cluster" | grep "mysql"
      icinga2-ido-mysql - host and network monitoring system - MySQL support
      oar-server-mysql - OAR batch scheduler MySQL server backend package
      oar-user-mysql - OAR batch scheduler MySQL user backend package
      
      root@MySQLClusterNode2:/home/user# apt-cache search mysql | grep "cluster"
      percona-xtradb-cluster-server-5.6 - Percona XtraDB Cluster database server binaries

      Note que "mysql-cluster" ne semble pas présent sur ubuntu 64bit non plus.

      ptete passer par la virtualisation d'un système 32 ou 64 bit afin de pouvoir installer les .deb prévu pour ces archis

      Donation Bitcoin : 1N8QGrhJGWdZNQNSspm3rSGjtXaXv9Ngat

  • # MySQL Cluster via Docker

    Posté par  . Évalué à 1. Dernière modification le 13 juin 2017 à 14:13.

    Je suis en train de tester une autre méthode pour installer MySQL Cluster : en utilisant docker.
    Pour le moment ça ne fonctionne pas (n'ayant JAMAIS utilisé docker auparavant, ça prend un peu de temps) mais si vous voulez jeter un œil :)

    SUR CHAQUE NODE :

    créer les dossiers

    mkdir -p /media/MySQLCluster/config/
    mkdir -p /media/MySQLCluster/data/
    

    Créer le fichier de conf

    nano /media/MySQLCluster/config/clusterConfiguration.ini
    

    Ajouter dedans après adaptation

    [NDBD DEFAULT]
    NoOfReplicas=2
    DataMemory=100M
    IndexMemory=18M
    datadir=/usr/local/mysql/data
    
    [NDB_MGMD DEFAULT]
    datadir=/var/lib/mysql-cluster
    
    [NDB_MGMD]
    NodeId=10
    hostname=10.8.0.51
    
    [NDB_MGMD]
    NodeId=11
    hostname=10.8.0.52
    
    [NDBD]
    NodeId=10
    hostname=10.8.0.51
    
    [NDBD]
    NodeId=11
    hostname=10.8.0.52
    
    [MYSQLD]
    NodeId=10
    hostname=10.8.0.51
    
    [MYSQLD]
    NodeId=11
    hostname=10.8.0.52
    

    SUR LE NODE 1

    docker run -d --name MySQLClusterNode1_manager --net=host -p 10.8.0.51:1186:1186 -v /media/MySQLCluster/config/clusterConfiguration.ini:/etc/mysql-cluster.ini:ro h3nrik/mysql-cluster ndb_mgmd
    docker run -d --name MySQLClusterNode1_data --net=host h3nrik/mysql-cluster -v /media/MySQLCluster/config/clusterConfiguration.ini:/etc/mysql-cluster.ini:ro ndbd 10.8.0.51
    docker run -d --name MySQLClusterNode1_mysql --net=host -p 10.8.0.51:3306:3306 h3nrik/mysql-cluster -v /media/MySQLCluster/config/clusterConfiguration.ini:/etc/mysql-cluster.ini:ro /media/MySQLCluster/data/:/usr/local/mysql/data/ mysqld 10.8.0.51
    

    Pour lancer

    docker start MySQLClusterNode1_data
    docker start MySQLClusterNode1_mysql
    docker start MySQLClusterNode1_manager
    

    SUR LE NODE 2

    docker run -d --name MySQLClusterNode2_manager --net=host -p 10.8.0.52:1186:1186 -v /media/MySQLCluster/config/clusterConfiguration.ini:/etc/mysql-cluster.ini:ro h3nrik/mysql-cluster ndb_mgmd
    docker run -d --name MySQLClusterNode2_data --net=host h3nrik/mysql-cluster -v /media/MySQLCluster/config/clusterConfiguration.ini:/etc/mysql-cluster.ini:ro ndbd 10.8.0.52
    docker run -d --name MySQLClusterNode2_mysql --net=host -p 10.8.0.52:3306:3306 h3nrik/mysql-cluster -v /media/MySQLCluster/config/clusterConfiguration.ini:/etc/mysql-cluster.ini:ro /media/MySQLCluster/data/:/usr/local/mysql/data/ mysqld 10.8.0.52
    

    Pour lancer

    docker start MySQLClusterNode2_data
    docker start MySQLClusterNode2_mysql
    docker start MySQLClusterNode2_manager
    

    Pour le moment il semble que les containers s'auto-quittent directement après lancement.

    PS: merci a Nicolive, graphikart et les autres pour leurs tutos
    Source : h3nrik/mysql-cluster

    Donation Bitcoin : 1N8QGrhJGWdZNQNSspm3rSGjtXaXv9Ngat

    • [^] # Re: MySQL Cluster via Docker

      Posté par  . Évalué à 1.

      Ça tourne en rond je pense que si ça ne démarre pas c'est car les images ne sont pas compilées pour ARM:
      retour de commande en testant ce tuto

      root@MySQLClusterNode1:/home/user# docker run -it --net=cluster mysql/mysql-cluster
      panic: standard_init_linux.go:178: exec user process caused "exec format error" [recovered]
          panic: standard_init_linux.go:178: exec user process caused "exec format error"
      
      goroutine 1 [running, locked to thread]:
      panic(0x33e410, 0x107a96c0)
          /usr/lib/go-1.6/src/runtime/panic.go:481 +0x330
      github.com/opencontainers/runc/vendor/github.com/urfave/cli.HandleAction.func1(0x107e5964)
          /build/runc-_7bniH/runc-1.0.0~rc2/_build/src/github.com/opencontainers/runc/vendor/github.com/urfave/cli/app.go:478 +0x328
      panic(0x33e410, 0x107a96c0)
          /usr/lib/go-1.6/src/runtime/panic.go:443 +0x448
      github.com/opencontainers/runc/libcontainer.(*LinuxFactory).StartInitialization.func1(0x107e55ec, 0x1071c450, 0x107e5674)
          /build/runc-_7bniH/runc-1.0.0~rc2/_build/src/github.com/opencontainers/runc/libcontainer/factory_linux.go:259 +0x13c
      github.com/opencontainers/runc/libcontainer.(*LinuxFactory).StartInitialization(0x107a6930, 0xb653e590, 0x107a96c0)
          /build/runc-_7bniH/runc-1.0.0~rc2/_build/src/github.com/opencontainers/runc/libcontainer/factory_linux.go:277 +0x498
      main.glob.func8(0x1079e1e0, 0x0, 0x0)
          /build/runc-_7bniH/runc-1.0.0~rc2/_build/src/github.com/opencontainers/runc/main_unix.go:26 +0x58
      reflect.Value.call(0x2f2fd0, 0x3fd448, 0x13, 0x36d600, 0x4, 0x107e5924, 0x1, 0x1, 0x0, 0x0, ...)
          /usr/lib/go-1.6/src/reflect/value.go:435 +0xeb4
      reflect.Value.Call(0x2f2fd0, 0x3fd448, 0x13, 0x107e5924, 0x1, 0x1, 0x0, 0x0, 0x0)
          /usr/lib/go-1.6/src/reflect/value.go:303 +0x84
      github.com/opencontainers/runc/vendor/github.com/urfave/cli.HandleAction(0x2f2fd0, 0x3fd448, 0x1079e1e0, 0x0, 0x0)
          /build/runc-_7bniH/runc-1.0.0~rc2/_build/src/github.com/opencontainers/runc/vendor/github.com/urfave/cli/app.go:487 +0x230
      github.com/opencontainers/runc/vendor/github.com/urfave/cli.Command.Run(0x36fa48, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3db610, 0x51, 0x0, ...)
          /build/runc-_7bniH/runc-1.0.0~rc2/_build/src/github.com/opencontainers/runc/vendor/github.com/urfave/cli/command.go:191 +0xcd0
      github.com/opencontainers/runc/vendor/github.com/urfave/cli.(*App).Run(0x10784240, 0x10764050, 0x2, 0x2, 0x0, 0x0)
          /build/runc-_7bniH/runc-1.0.0~rc2/_build/src/github.com/opencontainers/runc/vendor/github.com/urfave/cli/app.go:240 +0x84c
      main.main()
          /build/runc-_7bniH/runc-1.0.0~rc2/_build/src/github.com/opencontainers/runc/main.go:132 +0xb14
      

      Donation Bitcoin : 1N8QGrhJGWdZNQNSspm3rSGjtXaXv9Ngat

      • [^] # Re: MySQL Cluster via Docker

        Posté par  (site web personnel) . Évalué à 1.

        Je ne pense pas que Docker fasse de l'émulation. Les images que tu utilises sont prévues pour tourner sur ARM. Donc tu te retrouveras avec le même problème. En général on déconseille d'utiliser Docker pour des bases de données même si ça marche bien en utilisant un volume à part pour les données, voir en partageant un dossier sur l'hôte (je le fais avec succès pour odoo et postgresql).

        Je ne comprends pas pourquoi tu veux une base de données décentralisée. Ça a l'air tellement complexe et overkill sur raspberry pi.

        Si tu as plusieurs containers qui doivent être liés, je conseille docker-compose qui facilite le travail.

        Bon courage

        • [^] # Re: MySQL Cluster via Docker

          Posté par  . Évalué à 1.

          Je ne comprends pas pourquoi tu veux une base de données décentralisée. Ça a l'air tellement complexe et overkill sur raspberry pi.

          Car les bdd bouffent des ressources a l'abus (mes rpi1 lag et j'ai pas envie de les jeter), pour permettre de faire des trucs marrant (decentraliser le cloud et permettre aux gens qui hebergent une machine de l'utiliser en local et laisser le cluster bdd et le raid10 synchroniser le tout), car le systeme de backup actuel ne me convient pas, car je veux qu'en cas de panne tout continue de fonctionner (surtout le cloud et la videos surceillance).
          Je ne suis pas sur raspberry mais sur des odroid xu4 acheté pour l'occasion :P (et vu ca que ca m'a couté, je peux pas échouer! Mdr)

          En général on déconseille d'utiliser Docker pour des bases de données

          Le but est de faire tourner (stable) mysql cluster, peu importe comment :)

          Les images que tu utilises sont prévues pour tourner sur ARM.

          Quand je cherche panic: standard_init_linux.go:178: exec user process caused "exec format error" sur google je tombe sur des gens demandant si ca a bien été compilé pour ARM.

          Si tu as plusieurs containers qui doivent être liés, je conseille docker-compose qui facilite le travail.

          Je vais checker merci :)

          Bon courage

          Merci ! Ca fait plus de 2 semaines que je tripatouille :P

          Donation Bitcoin : 1N8QGrhJGWdZNQNSspm3rSGjtXaXv9Ngat

  • # Pour archive (#leProfessionalismedOracle)

    Posté par  . Évalué à 1. Dernière modification le 16 juin 2017 à 20:07.

    J'ai posté le problème de compilation sur le site d'Oracle : OracleCommunity - MySQl Cluster compilation Fail on Ubuntu 16.04 (ARM)

    Après avoir osé mettre "Résolut" dans le titre de mon thread (triche aux moteurs de recherche?) ils m'ont renvoyé vers un obscure forum de MySQL qui a l'air mort de chez mort : mysql.com - MySQl Cluster compilation Fail on Ubuntu 16.04 (ARM)

    En passant, vu que le forum pointe un lien vers lui, j'ai commenté la page de présentation de l'image docker de MySQL Cluster afin de signaler que ça ne fonctionne PAS sur ARM en postant l'erreur ainsi qu'un lien vers le logs complet. Mais ça fait 2 jours que le message est en attente de modération (on pourrait se poser la question de l’intérêt de cette méthode vu l'activité de leur site) : http://mysqlrelease.com/2017/05/docker-images-for-mysql-cluster/

    Oracle me fait penser a Belgacom :P

    • "votre technologie bug"
    • "demandez de l'aide a un autre utilisateur"
    • "vous pouvez pas m'aider?"
    • "tuuuut tuuuuuut tuuuuuut tuuuuut tuuuut"

    PS: on notera que pour lors de l'inscription sur son site, Oracle tente de récupérer un maximum d'informations personnelles (nom, prénom, téléphone, profession, etc) sans doute en vue de les utiliser voir de les revendre.

    Donation Bitcoin : 1N8QGrhJGWdZNQNSspm3rSGjtXaXv9Ngat

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.