#50502 Evaluation if connection flag c_state can be removed
Closed: wontfix 4 years ago by firstyear. Opened 4 years ago by tbordaz.

Issue Description

The flag c_state is used when a slot is found to handle a new connection. It is used to initialize c_mutex and allocate c_pdumutex.

It looks over complicated and this ticket is to evaluate if we can get rid of that flag.
Basically c_pdumutex should be allocated at the creation of the connection table.
Then a free slot is only retrieved with connection_is_free.
It is assumed that if connection_is_free, then c_mutex and c_pdumutex should be free. (we could assert a trylock on c_mutex).

Package Version and Platform

All versions

Steps to reproduce

N/a


I just add this because c_mutex is no longer a pointer so you can't a != NULL check on it, and if we change pdumutex also to pthread, the same will be true there. So then there won't be a distinction between free/not that we can use besides a c_state flag. Later I would like to move connection state to c_state rather than c-flags too which could clarify things too. So I think this is not to be removed.

Metadata Update from @firstyear:
- Custom field origin adjusted to None
- Custom field reviewstatus adjusted to None

4 years ago

Metadata Update from @mreynolds:
- Issue set to the milestone: 1.4.2

4 years ago

Metadata Update from @firstyear:
- Issue close_status updated to: invalid
- Issue status updated to: Closed (was: Open)

4 years ago

389-ds-base is moving from Pagure to Github. This means that new issues and pull requests
will be accepted only in 389-ds-base's github repository.

This issue has been cloned to Github and is available here:
- https://github.com/389ds/389-ds-base/issues/3558

If you want to receive further updates on the issue, please navigate to the github issue
and click on subscribe button.

Thank you for understanding. We apologize for all inconvenience.

Metadata Update from @spichugi:
- Issue close_status updated to: wontfix (was: invalid)

3 years ago

Login to comment on this ticket.

Metadata