C is a safety property ("nothing bad happens"), but what you're talking about is (kind of) a liveness property ("something good happens"). Real systems need both, so we have to discuss what to do about making correct progress in the face of failures.
Theoretical CP systems can't just block indefinitely, because the network can delay messages for 1 second longer than you choose to wait. Real-world CP systems can usually assume the network recovers--but it might be days before it does, so they'll need some strategy to handle all the requests in the mean time.
Typically, systems choose to time out or otherwise abort certain requests--exactly which depends on the logical topology of the system. For instance, if the primary node for a given shard of the DB is unreachable from a client, a CP-over-shard system would fail those requests--but not others. A totally CP system like ZK might fail requests in any minority components, but continue to work just fine if a majority component is preserved.
Bottom line: you can build CP systems. The only constraint a CP system has to obey is linearizability: successful operations must appear in the same order on all nodes.
Theoretical CP systems can't just block indefinitely, because the network can delay messages for 1 second longer than you choose to wait. Real-world CP systems can usually assume the network recovers--but it might be days before it does, so they'll need some strategy to handle all the requests in the mean time.
Typically, systems choose to time out or otherwise abort certain requests--exactly which depends on the logical topology of the system. For instance, if the primary node for a given shard of the DB is unreachable from a client, a CP-over-shard system would fail those requests--but not others. A totally CP system like ZK might fail requests in any minority components, but continue to work just fine if a majority component is preserved.
Bottom line: you can build CP systems. The only constraint a CP system has to obey is linearizability: successful operations must appear in the same order on all nodes.