/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to bzrlib/benchmarks/bench_knit.py

  • Committer: John Arbash Meinel
  • Date: 2009-12-03 04:55:02 UTC
  • mto: This revision was merged to the branch mainline in revision 4887.
  • Revision ID: john@arbash-meinel.com-20091203045502-uvhmg6b1yjbzzt8q
Change from being a per-serializer attribute to being a per-repo attribute.
This means we have some churn on *all* of the serializer apis, but it means
we *don't* have churn on all of the repository apis.

It makes it more thread-safe, since serializers are global instances.
Repositories aren't currently thread-safe anyway. (get_record_stream() specifically
is known not to be thread-safe on 2a format repos.)

Show diffs side-by-side

added added

removed removed

Lines of Context:
61
61
 
62
62
    def setup_load_data_c(self):
63
63
        self.requireFeature(CompiledKnitFeature)
 
64
        orig = knit._load_data
 
65
        def reset():
 
66
            knit._load_data = orig
 
67
        self.addCleanup(reset)
64
68
        from bzrlib._knit_load_data_pyx import _load_data_c
65
 
        self.overrideAttr(knit, '_load_data', _load_data_c)
 
69
        knit._load_data = _load_data_c
66
70
 
67
71
    def setup_load_data_py(self):
 
72
        orig = knit._load_data
 
73
        def reset():
 
74
            knit._load_data = orig
 
75
        self.addCleanup(reset)
68
76
        from bzrlib._knit_load_data_py import _load_data_py
69
 
        self.overrideAttr(knit, '_load_data', _load_data_py)
 
77
        knit._load_data = _load_data_py
70
78
 
71
79
    def test_read_50k_index_c(self):
72
80
        self.setup_load_data_c()