Pull to refresh
9
0

Выгребатель костров

Send message
Спасибо. Проверю. У нас правда макс 1тыс. вроде (и то не уверен, что такое не в clob'e храним), но, блин, снова та же диллема: Unicode и размер в байтах )))))
Хуже :) Это знают «все» кто Oracle only, или с него в мир реляционных баз пришел или… Просто это идет (немного?) в разрез всех других виденных баз и вызывает мягко говоря WTF удивление.
Вопрос не в том, что кто-то добавил или убрал char в синтаксис statement'ом. Вопрос в том, что это котрлогичное поведение которое ты не ожидаешь от базы (не буду про стоимость и пр.) и все это нужно «всего лишь» для совместимости, которая, возможна нужна не многим.

Это нечто такое простое и базовое, что я уверен знают далеко не все.

По поводу toolзы — скрипты были сгенерированы стандартным ПО (не самописным). Там видать эти «сюрпризы» знали :). Далее система развивалась, что-то изменялось-добавлялось (скрипты писались вручную). В части есть char, в части нет :) Потом провели расследование какого фига оно таки иногда падает. Нашли, вычистили. Решили поделиться опытом. Вдруг не мы одни такие. Мало ли…
Можно, но что это меняет особо? Т.е. для меня главное, то нужно постоянно об этой особенности Oracle «помнить».
говорят, что администратор оракл, получивший все сертификаты и сдавший все экзамены, может sql-запросом убить человека, зная только его IP
? :)
Насколько я вижу-знаю, это не так: nvarchar (а точнее nvarchar2) — это некий специальный тип, которые появился до unicode (данные со stackoverflow, не проверял), а сейчас это нечто маргинальное для хранения данных в кодировке UTF-16 (AL16UTF16), в то время, как в varchar2 по умолчанию данные в кодировке UTF-8 (AL32UTF8).

То, о чем Вы пишите — 100% в MS SQL'е, где именно nvarchar типы мы, например, и используем, но не в Oracle. Кодировка для varchar2 по-умолчанию в Unicode'ом Oracle'e — это UTF-8 (AL32UTF8).

Опять же, по данным stackoverflow не все PLSQL ф-ии совместимы с nvarchar2 (не то, чтобы это было таким уж нужным, но все же ...).
Не уверен, что понимаю о каком лимите идет речь. Нужно просто постоянно явно писать, что длина varchar2 в символах, а не байтах и по данным Oracle лучше значение по умолчанию для этой настройки не менять. И это печалит и, скорее всего, является постоянным источником ошибок для систем с хранением текстов в Unicode'e.
В тексте допущена ошибка?
В GraphQL существует 3 основных вида запросов:

  • Query
  • Mutation
  • Description



Вместо Subscription указано Description?

Если логи пустые, то томкат даже не смог стартануть (обычно сообщения о занятых портах пишутся сильно позже). Те это или права или путь к jvm (хотя я в tutorial’e налажал и не изменил JAVA_HOME, так эти сообщения в логах были).

Если еще есть виртуалка с tomcat 9 — посмотрите в логи томката (каталог logs). Если сервис стартует и останавливается, значит между этими событиями происходит какое-то событие (например, неправильный путь к JVM, порт занят и пр.).

Я бы на Вашем месте очистил каталог logs (сделал его пустым) и перезапустил tomcat9 сервис и посмотрел в логи.
Сделал все по инструкции. Полетело (digital ocean). По поводу порта 8005 — попробуйте его изменить в файле server.xml на любой другой свободный.
<Server port="8005" shutdown="SHUTDOWN">

Он, скорее всего, уже чем-то занят на это виртуалке. lsof Вам в помощь
> lsof -i :8005
COMMAND  PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
java    3433 tomcat   86u  IPv6  32276      0t0  TCP localhost:8005 (LISTEN)
По поводу сокета. Так вроде бы не умеет в них Apache Tomcat (или я не умею его готовить). Jetty умеет, но по условиям задачи нужен Tomcat.

Tomcat умеет в Ajp и есть связка Apache + tomcat по AJP (и в этом варианте, насколько мне помнится) даже не нужно ничего в томкате кофигурить — Apache Web Server сам корретно ip, порты и пр. прокидывает.

Наверняка можно и nginx + tomcat ajp настроить.
Нет.

Точнее так. Судя по данным с сайта Ubuntu пакет tomcat9 появится только в версии disco AKA 19.04 А чем плох вариант скачать zip/gzip и установить 9 или версию 8.5 (ее к слову тоже нет в пакетах). Шаги по томкату брать отсюда, например.
Все прочее кроме расположение tomcat файлов (в том числе и config) у вас останется без изменения (т.е. чуть больше будет прыжков по автозапуску и пр. и прописывать org.apache.catalina.valves.RemoteIpValve нужно будет в файле conf/server.xml и все, как кажется).
Спасибо, посмотрел. Не до конца понял, как этот docker image мне может помочь. Моя цель поднять reverse proxy с бесплатным (не самоподписным!) https сертификатом с минимальными усилиями. Кажется, для этого container'а уже нужно иметь уже готовые https сертификаты и он решает вопрос настройки nginx + ssl. Я понимаю, что если покопаться, то, наверное, найдется и такое решение (docker image for nginx + ssl + let's enctypt), но по моим внутренним ощущениям docker в этой задаче overkill. Т.е. нужна какая-то простая штука которую запускаешь и забываешь на годы (или пока Java не съест всю память :). А тут еще мы добавляем промежуточный слой docker'a с которым тоже могут быть свои особенности (от пробрасывания логов до изменений в сам образ и пр.).

И еще раз спасибо за комментарий.
Я бы сказал, что Java9 для меня это про JVM + API, а не про синтаксические изменения в самом языке. Хотя type inference Java 10 (var a=1;) тоже ничего. Java 9 — immutable collections, stream changes, options improvement, http improved API и т.д.

Мне это все сильно напоминает Java 6 после Java 5.
RC :) Я почти решил на нее переходить…
Это скорее вопрос рук тех «орлов» кто писал plugin который Вы использовали. Т.е. по большому счету к Eclipse JDT у меня претензий нет (хотелось бы больше, но жить можно), а вот со Scala все просто отвратительно (на наших сценариях). К слову, похожие на Ваши «глюки» я с какой-то периодичностью отлавливаю для Eclipse Clojure plugin'a (Counterclockwise) — т.е. ты вроде редактируешь ф-ию, обновляешь ее через repl, а эффекта 0, но возможно дело в другом. Эта проблема случайная…
Не-не-не. Не надо здесь этот Ваш новодел. Последнюю VS.NET которую я мучал была в 2005 году. Она была так себе. Eclipse ее как тот тузик…
1

Information

Rating
Does not participate
Registered
Activity