[ 
https://issues.apache.org/jira/browse/TC-32?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15884394#comment-15884394
 ] 

ASF GitHub Bot commented on TC-32:
----------------------------------

Github user knutsel commented on the issue:

    https://github.com/apache/incubator-trafficcontrol/pull/199
  
    hey @dg4prez - your new test fails for me?
    `[jvd@jvd-knutsel-4 app (master *$>)]$ prove -v 
./t/api/1.2/config_files_apache_traffic_server.t
    ./t/api/1.2/config_files_apache_traffic_server.t .. Subroutine 
TrafficOps::has redefined at 
/home/jvd/work/gh/knutsel/incubator-trafficcontrol/traffic_ops/app/local/lib/perl5/Mojo/Base.pm
 line 38.
    Subroutine TrafficOps::has redefined at 
/home/jvd/work/gh/knutsel/incubator-trafficcontrol/traffic_ops/app/local/lib/perl5/Mojo/Base.pm
 line 38.
    
    Loading config from 
/home/jvd/work/gh/knutsel/incubator-trafficcontrol/traffic_ops/app/conf/cdn.conf
    Reading log4perl config from 
/home/jvd/work/gh/knutsel/incubator-trafficcontrol/traffic_ops/app/conf/test/log4perl.conf
    Setting mojo inactivity timeout to 60
    -------------------------------------------------------------
    Loading Mojo Routes from package: TrafficOpsRoutes
    -------------------------------------------------------------
    [Sat Feb 25 21:50:28 2017] [info] admin was found in the database.
    [Sat Feb 25 21:50:28 2017] [debug] Password matched.
    ok 1 - POST /login
    ok 2 - 302 Found
    ok 3 - Should login?
    ok 4 - GET /api/1.2/server/100/configfiles/ats
    ok 5 - 200 OK
    ok 6
    ok 7 - GET /api/1.2/server/100/configfiles/ats/12M_facts
    ok 8 - 200 OK
    ok 9
    ok 10 - GET /api/1.2/server/100/configfiles/ats/ip_allow.config
    ok 11 - 200 OK
    ok 12
    ok 13 - GET /api/1.2/server/100/configfiles/ats/crontab_root
    ok 14 - 200 OK
    ok 15
    ok 16 - GET /api/1.2/server/100/configfiles/ats/remap.config
    ok 17 - 200 OK
    ok 18
    ok 19 - GET /api/1.2/server/100/configfiles/ats/parent.config
    ok 20 - 200 OK
    ok 21
    ok 22 - GET /api/1.2/server/100/configfiles/ats/cache.config
    ok 23 - 200 OK
    ok 24
    ok 25 - GET /api/1.2/server/100/configfiles/ats/hosting.config
    ok 26 - 200 OK
    ok 27
    ok 28 - GET /api/1.2/cdn/cdn1/configfiles/ats/cacheurl.config
    ok 29 - 200 OK
    ok 30
    ok 31 - GET /api/1.2/cdn/cdn1/configfiles/ats/regex_revalidate.config
    ok 32 - 200 OK
    ok 33
    ok 34 - GET /api/1.2/cdn/cdn1/configfiles/ats/hdr_rw_cdl-c2.config
    not ok 35 - 200 OK
    
    #   Failed test '200 OK'
    #   at ./t/api/1.2/config_files_apache_traffic_server.t line 57.
    #          got: '400'
    #     expected: '200'
    # {"alerts":[{"level":"error","text":"Error - incorrect file scope for 
route used.  Please use the server route."}]}
    ok 36
    ok 37 - GET /api/1.2/profile/100/configfiles/ats/50-ats.rules
    ok 38 - 200 OK
    ok 39
    ok 40 - GET /api/1.2/profile/100/configfiles/ats/drop_qstring.config
    ok 41 - 200 OK
    ok 42
    ok 43 - GET /api/1.2/profile/100/configfiles/ats/volume.config
    ok 44 - 200 OK
    ok 45
    ok 46 - GET /api/1.2/profile/100/configfiles/ats/astats.config
    ok 47 - 200 OK
    ok 48
    ok 49 - GET /api/1.2/profile/100/configfiles/ats/storage.config
    ok 50 - 200 OK
    ok 51
    ok 52 - GET /api/1.2/deliveryservices/list?logsEnabled=true
    ok 53 - 200 OK
    ok 54
    DBIx::Class::ResultSet::_resolved_attrs(): Useless use of distinct on a 
grouped resultset ('distinct' is ignored when a 'group_by' is present) at 
/home/jvd/work/gh/knutsel/incubator-trafficcontrol/traffic_ops/app/lib/UI/Topology.pm
 line 79
    ok 55 - PUT /api/1.2/snapshot/cdn1
    ok 56 - 200 OK
    ok 57
    ok 58 - GET /logout
    ok 59 - 302 Found
    ok 60
    1..60
    # Looks like you failed 1 test of 60.
    Dubious, test returned 1 (wstat 256, 0x100)
    Failed 1/60 subtests
    
    Test Summary Report
    -------------------
    ./t/api/1.2/config_files_apache_traffic_server.t (Wstat: 256 Tests: 60 
Failed: 1)
      Failed test:  35
      Non-zero exit status: 1
    Files=1, Tests=60,  6 wallclock secs ( 0.04 usr  0.01 sys +  4.14 cusr  
0.83 csys =  5.02 CPU)
    Result: FAIL
    [jvd@jvd-knutsel-4 app (master *$>)]$`


> Improve efficiency of ATS config generation
> -------------------------------------------
>
>                 Key: TC-32
>                 URL: https://issues.apache.org/jira/browse/TC-32
>             Project: Traffic Control
>          Issue Type: Improvement
>          Components: Traffic Ops API
>            Reporter: Derek Gelinas
>            Assignee: Derek Gelinas
>             Fix For: 1.9.0
>
>
> Currently when generating ATS configuration files, each server calls for its 
> individual files from traffic ops.  This is a very database-intensive process 
> that is not scalable enough.  I propose the following changes:
> 1) Generate the configuration files only as many times as needed - many files 
> are the same (or can be) for the entire CDN or server profile.
> 2) Once generated, the files can be cached locally.  Requests for the files 
> by ORT will result in pulling down these cached files rather than many 
> hundreds of DB queries each time.
> 3) Migrate the routes for these files to the API.  Each call will have 
> multiple options - a request made with no options would return the cached 
> file, another option would return the current DB data, and a third option 
> would update the cached file with the current information in the DB.
> 4) When an update is queued, generate and cache the configuration files, then 
> activate the update flag for the relevant servers once the cached file 
> generation is completed.
> In this way, triggering updates for the caches will result in an initial 
> increase in activity as traffic ops generates the files needed, followed by 
> the much lower impact of the files themselves being requested by the caches.
> I believe we can cut down the number of server-specific configuration files 
> to only 5 intially, and potentially fewer by having ORT fill in certain 
> fields on files like records.config with local data during processing.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to