Все сервисы Хабра

Сообщество IT-специалистов

Ответы на любые вопросы об IT

Профессиональное развитие в IT

Удаленная работа для IT-специалистов

Войти на сайт
  • Все вопросы
  • Все теги
  • Пользователи

Хабр Q&A — вопросы и ответы для IT-специалистов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Узнать больше
другие проекты хабра
  • Хабр
  • Карьера
  • Фриланс
Задать вопрос
Vakiliy

Dimitriy

  • 27
    вклад
  • 0
    вопросов
  • 38
    ответов
  • 58%
    решений
Комментарии
  • Информация
  • Ответы
  • Вопросы
  • Комментарии
  • Подписки
  • Нравится
  • Достижения
  • Как в PostgreSQL 9.3.4 возможно появление дублирующихся записей в таблицах с уникальным ограничением?

    Vakiliy
    Dimitriy @Vakiliy
    По воводу OIDS www.postgresql.org/docs/9.1/static/sql-createtable.html
    Tip: The use of OIDS=FALSE is not recommended for tables with no primary key, since without either an OID or a unique data key, it is difficult to identify specific rows.
    Написано более трёх лет назад
  • Как в PostgreSQL 9.3.4 возможно появление дублирующихся записей в таблицах с уникальным ограничением?

    Vakiliy
    Dimitriy @Vakiliy
    Теперь я не понял, т.е пробиваетя? Вы втавляете данные в таблицу, колонка remote_id содержит ограничение, что индекс должен быть уникальным, индекс не составной, то значение индекса няпрямую зависит от встявляемого значения.

    # \d test
    Table "public.test"
    Column | Type | Modifiers
    --------+---------+-----------
    remote_id | bigint |
    .....
    Indexes:
    "unique_remote_id" UNIQUE CONSTRAINT, btree (remote_id)

    в вашем случае, при наличии дубликатов должно быть:
    Indexes:
    "idx" btree (remote_id) INVALID
    Написано более трёх лет назад
  • Как в PostgreSQL 9.3.4 возможно появление дублирующихся записей в таблицах с уникальным ограничением?

    Vakiliy
    Dimitriy @Vakiliy
    покажите \d таблицы с реальными данными, ваши данные
    insert into test(remote_id, title, local_id) select rand(1000), 'Название', i from generate_series(1,100000) as i;
    ERROR: duplicate key value violates unique constraint "unique_remote_id"
    DETAIL: Key (remote_id)=(78) already exists.
    Да, и на сколько помню отключать идентификатор объекта не рекомндуется без превичных ключей.
    Написано более трёх лет назад
  • Как перезагрузить Rails сервер из браузера?

    Vakiliy
    Dimitriy @Vakiliy
    @Able1991, да я спрашивал про причину использования kill так после не обычно не предсказуемое остаточное поведение бывет.

    И собсвенно с какой целью таким способом перегружать сервак да еще режиме разработки?
    Написано более трёх лет назад
  • Какая быстрая база данных для интернет-магазина с более чем 50 тысячами товаров и поиском?

    Vakiliy
    Dimitriy @Vakiliy
    @xmdy вот тебе и кеш :) вобще странно конешна, сколько раз делал нечно подобное query:md5(query) [...] обычно быстрее, чем дернуть базу
    Написано более трёх лет назад
  • Как перезагрузить Rails сервер из браузера?

    Vakiliy
    Dimitriy @Vakiliy
    @Able1991 Мистика :))
    Написано более трёх лет назад
  • Какая быстрая база данных для интернет-магазина с более чем 50 тысячами товаров и поиском?

    Vakiliy
    Dimitriy @Vakiliy
    @xmdy даже если и не будете использовать нормализацию, в любом случае запрос и агрегированые теги сохраните в кеш, след раз просто возмете эти данные их кеша :)
    Написано более трёх лет назад
  • Какая быстрая база данных для интернет-магазина с более чем 50 тысячами товаров и поиском?

    Vakiliy
    Dimitriy @Vakiliy
    @sim3x т.е "по человечески"?
    @xmdy даже уже и не помню как такое вылыло :)
    да в вашем случае наверно правильней использовать поле tags как нормализованную таблицу для M2M, т.е только tag_id.
    По поводу кеширования, не совсем понял что вы кешируете в redis`е.
    Заносите в редисе запрос и его конечный результат, т.е если вы ищете товары с param-1 то это tag_ids и будет ваши результатом, следующий раз вам не придется делать выборку по все базе. Глубже наверно нет делать смыла, тк как это будет пересечение двух множеств param1[tag_ids] x param2[tag_ids].
    Написано более трёх лет назад
  • Как перезагрузить Rails сервер из браузера?

    Vakiliy
    Dimitriy @Vakiliy
    log покажите
    Написано более трёх лет назад
  • Как перезагрузить Rails сервер из браузера?

    Vakiliy
    Dimitriy @Vakiliy
    какой сервер и покажите код перезагрузки
    Написано более трёх лет назад
  • Как реализовать добавление стилей (sass) к каждой новой статье?

    Vakiliy
    Dimitriy @Vakiliy
    в моделе исхрднык даееые
    attributes[:sass] = '.good-news{ color: lime }'

    в моделе
    def to_css
    Sass.compile(sass)
    end
    в хелпере
    def css(object)
    object.respond_to?(:to_css) && content_for(:custom_css){ object.to_css }
    end

    в layout
    %style =yeild :custom_css

    использовать
    во вюхе
    = css(@article)

    как то так
    Написано более трёх лет назад
  • Как реализовать добавление стилей (sass) к каждой новой статье?

    Vakiliy
    Dimitriy @Vakiliy
    А зачем такой большой ни понятный велосипед с подгрузкой CSS для каждой статьи? Если так хочеться можно так: Sass.compile('тут код SASS')
    Написано более трёх лет назад
  • Почему интерпретатор ruby ведет себя так неадекватно?

    Vakiliy
    Dimitriy @Vakiliy
    Блин комент удалил :)
    В в каком классе используется переменная? Посмотрите на метод eval и как используется биндинг для этого метода. Подсказка: def a; var = 1; p "#{var}"; end И как связать eval(..., bind) и class_eval :)
    Написано более трёх лет назад
  • Grub не видит Windows7, что делать?

    Vakiliy
    Dimitriy @Vakiliy
    Чет не пойму, активный раздел какой?
    Написано более трёх лет назад
  • Rails, add_index (mysql, innodb). 50-100 тысяч строк, сколько должно занимать времени?

    Vakiliy
    Dimitriy @Vakiliy
    Что-то не увидел с чем связан внешний ключь, ну да ладно, вообще да, долго индексирует, попробуйте заоптимизировать мускул. Вообще для внешнего ключа индекс обычно делают, но почему разработчики его не сделали сразу, это вопрос.
    По летературе, ни чего не могу посоветовать, т.к сам в основном читаю все что попадается полезное в интеренет, могу дать только общие рекомендации, - ставть индексы на поля, по которым происходит поиск или сортировка, исключить использование ненужных индексов, проверить нужность не нужноть с помощью EXPLAIN ANALYZE.
    Написано более трёх лет назад
  • Работает ли Thin c Rails Live Streaming?

    Vakiliy
    Dimitriy @Vakiliy
    Т.е стороннее решение, глянул как они обошли ограничение thin - написали свою обвязку для EventMachine поместив ее в rack space и свой класс для отпрвки сообщений. :)
    Написано более трёх лет назад
  • Rails, add_index (mysql, innodb). 50-100 тысяч строк, сколько должно занимать времени?

    Vakiliy
    Dimitriy @Vakiliy
    Покажите какие индексы вы патаетеь добавить
    Написано более трёх лет назад
  • Работает ли Thin c Rails Live Streaming?

    Vakiliy
    Dimitriy @Vakiliy
    Да, видимо, в реальных условиях лучше использовать другой ruby server :)
    Написано более трёх лет назад
  • Работает ли Thin c Rails Live Streaming?

    Vakiliy
    Dimitriy @Vakiliy
    В ветке streaming не создает новый процесс для нового подключения пока не закончит работу текущий, т.е из примера "3.times do |a|" пока не завершит работу, к сереверу не подключится, по крайне мере, прошлой осенью не работало.
    Написано более трёх лет назад
  • Rails добавить class="active" когда url в рамках одного controller (:resources)?

    Vakiliy
    Dimitriy @Vakiliy
    Первые два пункта понятны, а кто такой слава? =)
    Написано более трёх лет назад
  • 1
  • 2
  • 3
  • 4
  • Следующие →
Самые активные сегодня
  • Mi11er
    Denis Melnikov
    • 7 ответов
    • 0 вопросов
  • scoffs
    Семён Окулов
    • 6 ответов
    • 0 вопросов
  • Drno
    • 6 ответов
    • 0 вопросов
  • Adamos
    Adamos
    • 5 ответов
    • 0 вопросов
  • Justa Gain
    • 5 ответов
    • 0 вопросов
  • rPman
    • 4 ответа
    • 1 вопрос
  • © Habr
  • О сервисе
  • Правила
  • Обратная связь
  • Блог

Войдите на сайт

Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации