Skip to content
Snippets Groups Projects
  1. Oct 21, 2021
  2. Apr 13, 2021
    • Iskander Sagitov's avatar
      box: change ER_TUPLE_FOUND message · d11fb306
      Iskander Sagitov authored
      ER_TUPLE_FOUND message shows only space and index, let's also show old
      tuple and new tuple.
      
      This commit changes error message in code and in tests. Test sql/checks
      and sql-tap/aler remain the same due to problems in showing their old
      and new tuples in error message.
      
      Closes #5567
      d11fb306
  3. Feb 12, 2021
    • mechanik20051988's avatar
      memtx: fix test for gh5304 issue and memtx_space_is_recovering function · 8ac47898
      mechanik20051988 authored
      In previous version of patch we compared memtx state with
      MEMTX_FINAL_RECOVERY to check that memtx recovery completed.
      This is not quite true, memtx_state == MEMTX_FINAL_RECOVERY
      means that the recovery from snapshot is finished, but recovery
      from wals not. We need to compare memtx_state with MEMTX_OK
      to check that recovery totally finished.
      In previous test version on_replace trigger (created on
      _user space) is never called. It's because is_recovery_finished()
      always returns false: on_schema_init is invoked BEFORE
      user's data recovery process (so trigger is not created at all
      at this moment).
      In new test version you can see correct user case:
      we create on_replace trigger on _index system space,
      which replaces/inserts/updates tuples in temp and loc spaces.
      So each time user creates new space and index for it,
      trigger replaces/inserts/updates tuples in temp and loc spaces.
      Because trigger replaces/inserts/updates tuple with same
      primary key, we get error when insert trigger called.
      
      Follow-up #5304
      8ac47898
  4. Dec 21, 2020
    • mechanik20051988's avatar
      memtx: fix a bug with insertion to space during recovery · 3bc4a156
      mechanik20051988 authored
      There was a problem whith on_schema_init trigger.
      This trigger gives a way to create on_replace trigger
      that will modify temporary or is_local spaces during recovery
      from snapshot, but on that stage of recovery process
      all space indexes are in special build mode when no check
      for uniqueness are made. I added a new function
      'is_recovery_finished' in box.ctl, which gives
      user ability to check that we are in snapshot recovery stage
      and can't insert/replace/update/upsert something. Also i added a
      check for corresponding operations, now they are failed
      if user tries to do them during snapshot recovery.
      
      @TarantoolBot document
      Title: Add 'is_recovery_finished' function
      Add 'is_recovery_finished' function in box.ctl
      to add user ability to check that we are
      in snapshot recovery stage and can't
      insert/replace/update/upsert something
      
      Closes #5304
      3bc4a156
Loading