Skip to content
Snippets Groups Projects
  1. Jun 20, 2022
  2. Jun 17, 2022
  3. Jun 16, 2022
  4. Jun 15, 2022
  5. Jun 06, 2022
  6. Jun 03, 2022
  7. Jun 02, 2022
  8. Jun 01, 2022
    • Yaroslav Dynnikov's avatar
      test: restart instances · 0c5b947f
      Yaroslav Dynnikov authored
      Restarting both instances doesn't work yet, to be fixed later.
      
      Close https://git.picodata.io/picodata/picodata/picodata/-/issues/90
      0c5b947f
    • Yaroslav Dynnikov's avatar
      fix: pytest raft_status assertion message · 4250a0c8
      Yaroslav Dynnikov authored
      Since commit d87dd4ca `leader_id` became an `Option`, so the `None`
      value isn't rendered in the `picolib.raft_status` response:
      
      ```python
      status={'is_ready': False, 'raft_state': 'Follower', 'id': 1}
      ```
      
      It makes pytest complain about missing argument:
      
      ```
      cluster2 = Cluster("127.0.0.1:3300", n=2)
      
          def test_restart_leader(cluster2: Cluster):
              i1, i2 = cluster2.instances
              i1.assert_raft_status('Leader')
              i2.assert_raft_status('Follower')
      
              i1.restart()
      >       i1.wait_ready()
      
      test/int/test_joining.py:209:
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
      ../../.local/share/virtualenvs/picodata-6sv6l6y-/lib/python3.10/site-packages/funcy/decorators.py:45:
      in wrapper
          return deco(call, *dargs, **dkwargs)
      ../../.local/share/virtualenvs/picodata-6sv6l6y-/lib/python3.10/site-packages/funcy/flow.py:127:
      in retry
          return call()
      ../../.local/share/virtualenvs/picodata-6sv6l6y-/lib/python3.10/site-packages/funcy/decorators.py:66:
      in __call__
          return self._func(*self._args, **self._kwargs)
      test/int/conftest.py:305: in wait_ready
          status = self._raft_status()
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
      
      self = Instance(i1, listen=127.0.0.1:3301)
      
          def _raft_status(self) -> RaftStatus:
              status = self.call("picolib.raft_status")
              assert isinstance(status, dict)
              eprint(f"{status=}")
      >       return RaftStatus(**status)
      E       TypeError: RaftStatus.__init__() missing 1 required positional
      argument: 'leader_id'
      
      test/int/conftest.py:280: TypeError
      ```
      
      This patch fixes the failure message:
      
      ```
      self = Instance(i1, listen=127.0.0.1:3301)
      
          @funcy.retry(tries=20, timeout=0.1)
          def wait_ready(self):
              status = self._raft_status()
      >       assert status.is_ready
      E       AssertionError: assert False
      E        +  where False = RaftStatus(id=1, raft_state='Follower',
      is_ready=False, leader_id=None).is_ready
      
      test/int/conftest.py:306: AssertionError
      ```
      4250a0c8
    • Sergey V's avatar
      feat: --cluster-id parameter · f8ac1dbe
      Sergey V authored
      * Make `--cluster-id` CLI mandatory.
      * Handle cluster_id mismatch in raft_join.
        When an instance attempts to join the cluster and the instances's
        `--instance-id` parameter mismatches the cluster_id of the cluster
        an error is raised inside the raft_join handler.
      Unverified
      f8ac1dbe
    • Sergey V's avatar
    • Sergey V's avatar
      docs: improve versioning.md · 9ce2eb92
      Sergey V authored
      Unverified
      9ce2eb92
    • Sergey V's avatar
      docs: fix typos (ru vs en) · d57b26d6
      Sergey V authored
      Unverified
      d57b26d6
    • Georgy Moshkin's avatar
      refactor(discovery): redundant allocation + readability · 58e1e25d
      Georgy Moshkin authored and Georgy Moshkin's avatar Georgy Moshkin committed
      58e1e25d
  9. May 31, 2022
  10. May 30, 2022
    • Georgy Moshkin's avatar
      chore(ci): bump rust version · 6f640421
      Georgy Moshkin authored and Georgy Moshkin's avatar Georgy Moshkin committed
      6f640421
    • Georgy Moshkin's avatar
      fix(build): fix build fail on rust 1.61 · 5157ab95
      Georgy Moshkin authored and Georgy Moshkin's avatar Georgy Moshkin committed
      since 1.61 rust has added a `whole-archive` modifier for link targets
      which is unset by default.
      
      Previously to this version this was probably undefined behavior, because
      the linking would work fine when building an executable (like picodata)
      but would fail with undefined symbols when building a static library.
      
      But now with the advent of this option, we can probably refactor
      picodata into a library which can be useful for testing, i.e. we can
      exclude testing stuff from the binary but still have a test binary with
      all the necessary runtime symbols.
      
      Closes #81
      5157ab95
    • VS's avatar
      fix: represent node leader_id as Option · d87dd4ca
      VS authored and Yaroslav Dynnikov's avatar Yaroslav Dynnikov committed
      d87dd4ca
Loading