ELVIS WIANDA created BEAM-13603:
-----------------------------------

             Summary: Shared object does not read from cache when using tag
                 Key: BEAM-13603
                 URL: https://issues.apache.org/jira/browse/BEAM-13603
             Project: Beam
          Issue Type: Bug
          Components: sdk-py-core
            Reporter: ELVIS WIANDA


{code:java}
cat shared_test.py{code}
 
{code:java}

import unittest
from apache_beam.utils import shared

class NamedObject(object):
    def __init__(self, name):
        self._name = name
    def get_name(self):
        return self._name

class Sequence(object):
    def __init__(self):
        self._sequence = 0
    def make_acquire_fn(self):
        # Every time acquire_fn is called, increases the sequence number and 
returns
        # a NamedObject with that sequenece number.
        def acquire_fn():
            self._sequence += 1
            return NamedObject("sequence%d" % self._sequence)
        return acquire_fn

class SharedTest(unittest.TestCase):
    def testDifferentObjects(self):
        sequence = Sequence()
        handle = shared.Shared()
        f1 = handle.acquire(sequence.make_acquire_fn(), tag="1")
        self.assertEqual("sequence1", f1.get_name())
        # should pass
        f1 = handle.acquire(sequence.make_acquire_fn(), tag="1")
        self.assertEqual("sequence1", f1.get_name())

if __name__ == "__main__":
    unittest.main()
{code}
{code:java}
python shared_test.py {code}
{code:java}
F
======================================================================
FAIL: testDifferentObjects (__main__.SharedTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "shared_test.py", line 59, in testDifferentObjects
    self.assertEqual("sequence1", f1.get_name())
AssertionError: 'sequence1' != 'sequence2'
- sequence1
?         ^
+ sequence2
?         ^
 
{code}
 

 



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to