Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • 14:47
    niemyjski synchronize #452
  • 14:47

    niemyjski on elastic7

    add failed task ids to log mess… (compare)

  • 09:40
    zhangyiqiu starred exceptionless/Exceptionless
  • 07:45
  • 05:47
    ejsmith edited #471
  • 05:46
    ejsmith opened #471
  • 05:46

    ejsmith on strip-large-data

    Strip large data values out of … (compare)

  • Dec 11 19:54
    niemyjski synchronize #452
  • Dec 11 19:54

    niemyjski on elastic7

    Decrease batch size (compare)

  • Dec 11 14:51
    niemyjski synchronize #452
  • Dec 11 14:51

    niemyjski on elastic7

    Reset the alias cache before ru… (compare)

  • Dec 11 04:03

    ejsmith on mappings-refactor

    (compare)

  • Dec 11 04:02
    ejsmith synchronize #452
  • Dec 11 04:02

    ejsmith on elastic7

    Change a bunch of index field s… Updated dependencies. Revert to 2201-pre and 6 more (compare)

  • Dec 11 04:02
    ejsmith closed #470
  • Dec 11 04:02
    ejsmith edited #470
  • Dec 11 03:59
    ejsmith opened #470
  • Dec 11 03:14

    niemyjski on mappings-refactor

    Updated to latest foundatio (compare)

  • Dec 11 02:59

    niemyjski on mappings-refactor

    Tweaked the event index mapping… (compare)

  • Dec 11 01:53

    ejsmith on mappings-refactor

    Update cache client list method… (compare)

Blake Niemyjski
@niemyjski
I just looked at the code and converted two of the jobs to the new thing in 30 seconds
cachelockprovider
Eric J. Smith
@ejsmith
can do it in cache, but that doesn’t live forever… but maybe it lives love enough.
Blake Niemyjski
@niemyjski
already have access to work item data
and you pass that to GetKey()
cache lives as long as required?
Eric J. Smith
@ejsmith
probably
it should live for a really long time, but it’s not guaranteed.
Blake Niemyjski
@niemyjski
    public override Task<ILock> GetWorkItemLockAsync(object workItem, CancellationToken cancellationToken = new CancellationToken()) {
        var cacheKey = $"{nameof(RemoveOrganizationWorkItemHandler)}:{((RemoveOrganizationWorkItem)workItem).OrganizationId}";
        return _lockProvider.AcquireAsync(cacheKey, TimeSpan.FromMinutes(15), new CancellationToken(true));
    }
Eric J. Smith
@ejsmith
I’m not sure how the 1 time work item handler would be different than just adding the getworkitemlock
guess it could just be a shortcut that just calls GetKey for you in the GetWorkItemLock
Blake Niemyjski
@niemyjski
yeah
could make these a lot more easier to use if we put a generic on workitemhandler<WorkItemHandlerBase>
but that might make other things harder todo..
Eric J. Smith
@ejsmith
how long would we hold the lock for?
huh?
Blake Niemyjski
@niemyjski
15 minutes or until we release it or renew it
Eric J. Smith
@ejsmith
that isn’t really 1 time.
I think the idea should be that 1 time means 1 time… meaning we set a key that doesn’t expire for like 24 hours or something.
so just do a throttling lock provider for 1 hit every 24 hours
should keep it from happening again.
kind of feel like we should make people implement that themselves.
because 1 time sounds like its gauranteeing more than just thottling it for 24 hours.
and it’s really not saving much.
Blake Niemyjski
@niemyjski
changes pushed
heading to gym
to me
one time means the job is ran one time
once it’s ran it can run again
Eric J. Smith
@ejsmith
right
and putting a lock for 24 hours
Blake Niemyjski
@niemyjski
like throttleing events on an ip is a one time job that might happen repeatidly
Eric J. Smith
@ejsmith
doesn’t guarantee shit
and they aren’t saving much work over doing the lock themselves.
Blake Niemyjski
@niemyjski
guess there is confusion on what one time job means
Eric J. Smith
@ejsmith
so I say we let them do the lock themseleves.
Blake Niemyjski
@niemyjski
yeah
lets remove it
Eric J. Smith
@ejsmith
ok
do it
Blake Niemyjski
@niemyjski
I agree
simple enough for me to just do this
Eric J. Smith
@ejsmith
yeah
we might add another lock provider that persists the fact that something has run permanantly.
could be useful for running migrations
that should happen 1 time EVER
Blake Niemyjski
@niemyjski
pushed
Eric J. Smith
@ejsmith
ok
Blake Niemyjski
@niemyjski
yeah
:)